<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Starshatter_Open: D:/SRC/StarshatterSVN/Stars45/TacticalView.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Starshatter_Open
   </div>
   <div id="projectbrief">Open source Starshatter engine</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_tactical_view_8cpp.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Macros</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">TacticalView.cpp</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_tactical_view_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*  Project Starshatter 5.0</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">        Destroyer Studios LLC</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">        Copyright (C) 1997-2007. All Rights Reserved.</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">        SUBSYSTEM:    Stars.exe</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">        FILE:         TacticalView.cpp</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">        AUTHOR:       John DiCamillo</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">        OVERVIEW</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">        ========</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">        View class for Tactical Data Readout HUD Overlay</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_mem_debug_8h.html">MemDebug.h</a>&quot;</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_tactical_view_8h.html">TacticalView.h</a>&quot;</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_quantum_view_8h.html">QuantumView.h</a>&quot;</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_radio_view_8h.html">RadioView.h</a>&quot;</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_radio_message_8h.html">RadioMessage.h</a>&quot;</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_radio_traffic_8h.html">RadioTraffic.h</a>&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_h_u_d_sounds_8h.html">HUDSounds.h</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_h_u_d_view_8h.html">HUDView.h</a>&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_wep_view_8h.html">WepView.h</a>&quot;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_camera_director_8h.html">CameraDirector.h</a>&quot;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_ship_8h.html">Ship.h</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_ship_ctrl_8h.html">ShipCtrl.h</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_ship_design_8h.html">ShipDesign.h</a>&quot;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_quantum_drive_8h.html">QuantumDrive.h</a>&quot;</span></div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_farcaster_8h.html">Farcaster.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_instruction_8h.html">Instruction.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_element_8h.html">Element.h</a>&quot;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_contact_8h.html">Contact.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_sim_8h.html">Sim.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_starshatter_8h.html">Starshatter.h</a>&quot;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_game_screen_8h.html">GameScreen.h</a>&quot;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_menu_view_8h.html">MenuView.h</a>&quot;</span></div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_projector_8h.html">Projector.h</a>&quot;</span></div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_color_8h.html">Color.h</a>&quot;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_window_8h.html">Window.h</a>&quot;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_video_8h.html">Video.h</a>&quot;</span></div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_data_loader_8h.html">DataLoader.h</a>&quot;</span></div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_scene_8h.html">Scene.h</a>&quot;</span></div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_font_mgr_8h.html">FontMgr.h</a>&quot;</span></div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_keyboard_8h.html">Keyboard.h</a>&quot;</span></div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_mouse_8h.html">Mouse.h</a>&quot;</span></div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_mouse_controller_8h.html">MouseController.h</a>&quot;</span></div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_menu_8h.html">Menu.h</a>&quot;</span></div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_game_8h.html">Game.h</a>&quot;</span></div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_format_util_8h.html">FormatUtil.h</a>&quot;</span></div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="keyword">static</span> <a class="code" href="class_color.html">Color</a>  hud_color = <a class="code" href="class_color.html#ad4282315e214e01f5c2cc046c3a3d8f4">Color::Black</a>;</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="keyword">static</span> <a class="code" href="class_color.html">Color</a>  txt_color = <a class="code" href="class_color.html#ad4282315e214e01f5c2cc046c3a3d8f4">Color::Black</a>;</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<a class="code" href="class_tactical_view.html">TacticalView</a>* <a class="code" href="class_tactical_view.html#ab0587d877c98ae6194983accb97b6c68">TacticalView::tac_view</a> = 0;</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a350c6d5ad8406eaf83b04fc10a0cd6d3">   61</a></span>&#160;<a class="code" href="class_tactical_view.html#a350c6d5ad8406eaf83b04fc10a0cd6d3">TacticalView::TacticalView</a>(<a class="code" href="class_window.html">Window</a>* c, <a class="code" href="class_game_screen.html">GameScreen</a>* parent)</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;: <a class="code" href="class_view.html">View</a>(c), gamescreen(parent), ship(0), camview(0), projector(0),</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;mouse_down(0), right_down(0), shift_down(0),</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;show_move(0), show_action(0), active_menu(0), menu_view(0),</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;msg_ship(0), base_alt(0), move_alt(0)</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;{</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        <a class="code" href="class_tactical_view.html#ab0587d877c98ae6194983accb97b6c68">tac_view</a> = <span class="keyword">this</span>;</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>      = <a class="code" href="class_sim.html#a14b48a472bca6d04230c789fc4beab4c">Sim::GetSim</a>();</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>    = <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#ae12a6cdc5b020fd929c9d3b383d07990">Width</a>();</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a>   = <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a679962e4f3127e5293d3cf3c26cf1f88">Height</a>();</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        <a class="code" href="class_tactical_view.html#a81a62b20febd4cdd2900ec385a3bb984">xcenter</a>  = (<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>  / 2.0) - 0.5;</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;        <a class="code" href="class_tactical_view.html#a76c891e866836f7b777d5d0204cac0bd">ycenter</a>  = (<a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a> / 2.0) + 0.5;</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>     = <a class="code" href="class_font_mgr.html#a9f6644bbe59027c5c919fc64f16b538e">FontMgr::Find</a>(<span class="stringliteral">&quot;HUD&quot;</span>);</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <a class="code" href="class_tactical_view.html#a276f90b0826ebe6344053ccf05595305">SetColor</a>(<a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>);</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.x  = 0;</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.y  = 0;</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.x = 0;</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.y = 0;</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a> = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu_view.html">MenuView</a>(<a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>);</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;}</div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;</div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="code" href="class_tactical_view.html#ab7fd9244f8b370a22bc64adb2f01808d">   86</a></span>&#160;<a class="code" href="class_tactical_view.html#ab7fd9244f8b370a22bc64adb2f01808d">TacticalView::~TacticalView</a>()</div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;{</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        <span class="keyword">delete</span> <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>;</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <a class="code" href="class_tactical_view.html#ab0587d877c98ae6194983accb97b6c68">tac_view</a> = 0;</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;}</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a21022fc9c0ddcf3d4cfca0968807c4dc">   93</a></span>&#160;<a class="code" href="class_tactical_view.html#a21022fc9c0ddcf3d4cfca0968807c4dc">TacticalView::OnWindowMove</a>()</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;{</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        <a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>       = <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#ae12a6cdc5b020fd929c9d3b383d07990">Width</a>();</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        <a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a>      = <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a679962e4f3127e5293d3cf3c26cf1f88">Height</a>();</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;        <a class="code" href="class_tactical_view.html#a81a62b20febd4cdd2900ec385a3bb984">xcenter</a>     = (<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>  / 2.0) - 0.5;</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <a class="code" href="class_tactical_view.html#a76c891e866836f7b777d5d0204cac0bd">ycenter</a>     = (<a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a> / 2.0) + 0.5;</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>)</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a5a6faffffe1a9d0de81edeb4d2874147">OnWindowMove</a>();</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;}</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="class_tactical_view.html#ae8281a94291c3471e0a6f17bf560d4ee">  107</a></span>&#160;<a class="code" href="class_tactical_view.html#ae8281a94291c3471e0a6f17bf560d4ee">TacticalView::Update</a>(<a class="code" href="class_sim_object.html">SimObject</a>* obj)</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;{</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        <span class="keywordflow">if</span> (obj == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> = 0;</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        }</div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;        <span class="keywordflow">if</span> (obj == <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) {</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a> = 0;</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        }</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="class_tactical_view.html#ae8281a94291c3471e0a6f17bf560d4ee">SimObserver::Update</a>(obj);</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;}</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>*</div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a91b6a38cf2b4354decf8784cea8ec698">  121</a></span>&#160;<a class="code" href="class_tactical_view.html#a91b6a38cf2b4354decf8784cea8ec698">TacticalView::GetObserverName</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;        <span class="keywordflow">return</span> <span class="stringliteral">&quot;TacticalView&quot;</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;}</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a9b12057ac0ea1bce5684b1fb7c7fd60d">  127</a></span>&#160;<a class="code" href="class_tactical_view.html#a9b12057ac0ea1bce5684b1fb7c7fd60d">TacticalView::UseProjector</a>(<a class="code" href="class_projector.html">Projector</a>* p)</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;{</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a> = p;</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;}</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a9a231ed713cfe291dc34875bdceb4857">  135</a></span>&#160;<a class="code" href="class_tactical_view.html#a9a231ed713cfe291dc34875bdceb4857">TacticalView::Refresh</a>()</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;{</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a> = <a class="code" href="class_sim.html#a14b48a472bca6d04230c789fc4beab4c">Sim::GetSim</a>();</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>) {</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;                <span class="keywordtype">bool</span> rebuild = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> != <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a77c21538f4c452ea5ae3d2f8af689893">GetPlayerShip</a>()) {</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> = <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a77c21538f4c452ea5ae3d2f8af689893">GetPlayerShip</a>();</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;                                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_physical.html#aec2a93daff24c5b87933914cbcb100fe">Life</a>() == 0 || <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a52816aa006d339addfc7b199f586e7b6">IsDying</a>() || <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a24ed7895c3b49f5aafca441d25e64408">IsDead</a>()) {</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;                                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> = 0;</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                                }</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                                        <a class="code" href="class_sim_observer.html#ae6c9a20e4fd0bcb3590f983a391dd451">Observe</a>(<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>);</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;                                }</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;                        }</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;                        rebuild = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;                }</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a05c7f73f55af5e267ebc8254b7f476f0">current_sector</a> != <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_sim_object.html#aa15b8215840833436f14f22919cf01f5">GetRegion</a>()-&gt;<a class="code" href="class_sim_region.html#a4fb402a63782d520a25954ab9235b1bc">Name</a>())</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                        rebuild = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;                        <span class="keywordflow">if</span> (rebuild) {</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                                <a class="code" href="class_tactical_view.html#ab5d8251a1604f68cfcde3c26cc854229">BuildMenu</a>();</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                                <a class="code" href="class_tactical_view.html#a05c7f73f55af5e267ebc8254b7f476f0">current_sector</a> = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_sim_object.html#aa15b8215840833436f14f22919cf01f5">GetRegion</a>()-&gt;<a class="code" href="class_sim_region.html#a4fb402a63782d520a25954ab9235b1bc">Name</a>();</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;                        }</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                }</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;        }</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> || <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a4c286a7400f766ac66cc95c61d96133e">InTransition</a>())</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;        <a class="code" href="class_tactical_view.html#af3b083b27581c5ed4df2e4b83d0b071d">DrawMouseRect</a>();</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>) {</div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;                <a class="code" href="class_list_iter.html">ListIter&lt;Ship&gt;</a> sel = <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a1f9cf01d6628139497893bbaca244805">GetSelection</a>();</div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;                <span class="keywordflow">if</span> (sel.<a class="code" href="class_list_iter.html#a650b234d583cd96b05a358af050ce7df">size</a>()) {</div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;                        <span class="keywordflow">while</span> (++sel) {</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;                                <a class="code" href="class_ship.html">Ship</a>* selection = sel.<a class="code" href="class_list_iter.html#a70cb1260924c01a38c4a68552120a5e0">value</a>();</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;                                <span class="comment">// draw selection rect on selected ship:</span></div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;                                <span class="keywordflow">if</span> (selection &amp;&amp; selection-&gt;<a class="code" href="class_physical.html#a6d29a1d011f1ab48bcea980ded24ce4d">Rep</a>())</div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;                                <a class="code" href="class_tactical_view.html#ab6997d79249d3478869a4d00e7baaffc">DrawSelection</a>(selection);</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;                        }</div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;                        <a class="code" href="class_radio_view.html">RadioView</a>*   rv = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">RadioView::GetInstance</a>();</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;                        <a class="code" href="class_quantum_view.html">QuantumView</a>* qv = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">QuantumView::GetInstance</a>();</div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;                        <span class="keywordflow">if</span> ((!rv || !rv-&gt;<a class="code" href="class_radio_view.html#aa022d59daa7c3ba27834c614adb60dda">IsMenuShown</a>()) &amp;&amp; (!qv || !qv-&gt;<a class="code" href="class_quantum_view.html#a46dc9b8553d00fac6b7d008d652dbae7">IsMenuShown</a>())) {</div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;                                sel.<a class="code" href="class_list_iter.html#ae851e8921d44ff7df1287fc06766d9c2">reset</a>();</div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;</div>
<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;                                <span class="keywordflow">if</span> (sel.<a class="code" href="class_list_iter.html#a650b234d583cd96b05a358af050ce7df">size</a>() == 1) {</div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;                                        <a class="code" href="class_tactical_view.html#a7749ecaa952a0631a50d567650c3cb61">DrawSelectionInfo</a>(sel.<a class="code" href="class_list_iter.html#a4004833ac50f17a0769eb1fefcae8cd9">next</a>());</div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                                }</div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                                        <a class="code" href="class_tactical_view.html#a1a84cc38c55d12089d0fa32e43b6b6ad">DrawSelectionList</a>(sel);</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;                                }</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;                        }</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                }</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        }</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <a class="code" href="class_tactical_view.html#a81204f62ab524cbf5e5d041af7b7ef9f">DrawMenu</a>();</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a03934c680c61f178473e2697ecb6b761">show_move</a>) {</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;                <a class="code" href="class_mouse.html#a46b9aaeff75f2b50d3e188ba02379293">Mouse::Show</a>(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                <a class="code" href="class_tactical_view.html#a9ff9c1e9cf00a9b44fd83eee007b0d7e">DrawMove</a>();</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;        }</div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a>) {</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;                <a class="code" href="class_mouse.html#a46b9aaeff75f2b50d3e188ba02379293">Mouse::Show</a>(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;                <a class="code" href="class_tactical_view.html#ac918ab05e653022fafe2d99c896e28d8">DrawAction</a>();</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        }</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;}</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a26d612bc6322fb2dfd6428e22c018aed">  216</a></span>&#160;<a class="code" href="class_tactical_view.html#a26d612bc6322fb2dfd6428e22c018aed">TacticalView::ExecFrame</a>()</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;{</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <a class="code" href="class_h_u_d_view.html">HUDView</a>* hud = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">HUDView::GetInstance</a>();</div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        <span class="keywordflow">if</span> (hud) {</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;                <span class="keywordflow">if</span> (hud_color != hud-&gt;<a class="code" href="class_h_u_d_view.html#a7169da7c058e2090687b7c2a1d420b8a">GetTextColor</a>()) {</div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;                        hud_color = hud-&gt;<a class="code" href="class_h_u_d_view.html#a7169da7c058e2090687b7c2a1d420b8a">GetTextColor</a>();</div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;                        <a class="code" href="class_tactical_view.html#a276f90b0826ebe6344053ccf05595305">SetColor</a>(hud_color);</div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;                }</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        }</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;}</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a276f90b0826ebe6344053ccf05595305">  230</a></span>&#160;<a class="code" href="class_tactical_view.html#a276f90b0826ebe6344053ccf05595305">TacticalView::SetColor</a>(<a class="code" href="class_color.html">Color</a> c)</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;{</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        <a class="code" href="class_h_u_d_view.html">HUDView</a>* hud = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">HUDView::GetInstance</a>();</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        <span class="keywordflow">if</span> (hud) {</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;                hud_color = hud-&gt;<a class="code" href="class_h_u_d_view.html#acb5aa9a6cf92947fcc2ace6b147a7ac9">GetHUDColor</a>();</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;                txt_color = hud-&gt;<a class="code" href="class_h_u_d_view.html#a7169da7c058e2090687b7c2a1d420b8a">GetTextColor</a>();</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        }</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;                hud_color = c;</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;                txt_color = c;</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        }</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;}</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00247"></a><span class="lineno"><a class="code" href="class_tactical_view.html#af3b083b27581c5ed4df2e4b83d0b071d">  247</a></span>&#160;<a class="code" href="class_tactical_view.html#af3b083b27581c5ed4df2e4b83d0b071d">TacticalView::DrawMouseRect</a>()</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;{</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a> &gt; 0 &amp;&amp; <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#af9111a21106ba65952da60320ea91df6">h</a> &gt; 0) {</div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;                <a class="code" href="class_color.html">Color</a> c = hud_color * 0.66;</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#af8e9f218cf93874ee2c47ac20c9390c4">shift_down</a>)</div>
<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;                c = <a class="code" href="class_color.html#a98eea813eb02f72d41cb5d58cac88859">Color::Orange</a>;</div>
<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;</div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;                <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a6485d94c0ad56f29362466857bb0485a">DrawRect</a>(<a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>, c);</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        }</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;}</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;</div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"><a class="code" href="class_tactical_view.html#ab6997d79249d3478869a4d00e7baaffc">  262</a></span>&#160;<a class="code" href="class_tactical_view.html#ab6997d79249d3478869a4d00e7baaffc">TacticalView::DrawSelection</a>(<a class="code" href="class_ship.html">Ship</a>* seln)</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;{</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    <span class="keywordflow">if</span> (!seln)</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    </div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;        <a class="code" href="class_graphic.html">Graphic</a>* g = seln-&gt;<a class="code" href="class_physical.html#a6d29a1d011f1ab48bcea980ded24ce4d">Rep</a>();</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;        <a class="code" href="struct_rect.html">Rect</a> r = g-&gt;<a class="code" href="class_graphic.html#a5fb16d4690c8d15dc440daca59f6ce69">ScreenRect</a>();</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    </div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;        <a class="code" href="struct_point.html">Point</a> mark_pt = seln-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>();</div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(mark_pt);</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;        <span class="comment">// clip:</span></div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        <span class="keywordflow">if</span> (mark_pt.<a class="code" href="struct_point.html#a05ba3b1dfcb19430582ae953cbbfbded">z</a> &gt; 1.0) {</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(mark_pt);</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;                <span class="keywordtype">int</span> x = (int) mark_pt.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>;</div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                <span class="keywordtype">int</span> y = r.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a>;</div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;</div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                if (y &gt;= 2000)</div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;                y = (int) mark_pt.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>;</div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;                if (x &gt; 4 &amp;&amp; x &lt; <a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>-4 &amp;&amp;</div>
<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;                                y &gt; 4 &amp;&amp; y &lt; <a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a>-4) {</div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;</div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;                        <span class="keyword">const</span> <span class="keywordtype">int</span> BAR_LENGTH = 40;</div>
<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;                        <span class="comment">// life bars:</span></div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;                        <span class="keywordtype">int</span> sx = x - BAR_LENGTH/2;</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                        <span class="keywordtype">int</span> sy = y - 8;</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;                        <span class="keywordtype">double</span> hull_strength = seln-&gt;<a class="code" href="class_ship.html#a91c47209ae5661196fc086e9bbcf22a3">HullStrength</a>() / 100.0;</div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;                        <span class="keywordtype">int</span> hw = (int) (BAR_LENGTH * hull_strength);</div>
<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;                        <span class="keywordtype">int</span> sw = (int) (BAR_LENGTH * (seln-&gt;<a class="code" href="class_ship.html#a06991e72c4adc3bec1ce731b92649ef4">ShieldStrength</a>() / 100.0));</div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;                        <span class="keywordflow">if</span> (hw &lt; 0) hw = 0;</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;                        <span class="keywordflow">if</span> (sw &lt; 0) sw = 0;</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;                        <a class="code" href="class_system.html#a01ad7eea57f4a2799a0159f4c3c75b07">System::STATUS</a> s = <a class="code" href="class_system.html#a01ad7eea57f4a2799a0159f4c3c75b07abf13d09d965e1fe8442d821061a726af">System::NOMINAL</a>;</div>
<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;</div>
<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;                        <span class="keywordflow">if</span> (hull_strength &lt; 0.30)        s = <a class="code" href="class_system.html#a01ad7eea57f4a2799a0159f4c3c75b07a95b73c8f4fbd7a1e4cd019bffb90d1e7">System::CRITICAL</a>;</div>
<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;                        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (hull_strength &lt; 0.60)   s = <a class="code" href="class_system.html#a01ad7eea57f4a2799a0159f4c3c75b07accd7de0a6f962da9b46e536fefd63041">System::DEGRADED</a>;</div>
<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;</div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;                        <a class="code" href="class_color.html">Color</a> hc = <a class="code" href="class_h_u_d_view.html#a88a90ab4c92f352005cab9401fbedf04">HUDView::GetStatusColor</a>(s);</div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;                        <a class="code" href="class_color.html">Color</a> sc = hud_color;</div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;                        <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a16fa43198c2f8d92af58a137967c19b1">FillRect</a>(sx, sy,   sx+hw, sy+1, hc);</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;                        <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a16fa43198c2f8d92af58a137967c19b1">FillRect</a>(sx, sy+3, sx+sw, sy+4, sc);</div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;                }</div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;        }</div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;}</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;</div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00318"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a7749ecaa952a0631a50d567650c3cb61">  318</a></span>&#160;<a class="code" href="class_tactical_view.html#a7749ecaa952a0631a50d567650c3cb61">TacticalView::DrawSelectionInfo</a>(<a class="code" href="class_ship.html">Ship</a>* seln)</div>
<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;{</div>
<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> || !seln) <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;        <a class="code" href="struct_rect.html">Rect</a>  label_rect(<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>-140, 10, 90, 12);</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;        <a class="code" href="struct_rect.html">Rect</a>  info_rect(<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>-100, 10, 90, 12);</div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;</div>
<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a> &gt;= 800) {</div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;                label_rect.<a class="code" href="struct_rect.html#a64d1ef14e429e1816539de4c54361e55">x</a> -= 20;</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a64d1ef14e429e1816539de4c54361e55">x</a>  -= 20;</div>
<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a>  += 20;</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;        }</div>
<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> name[64];</div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> design[64];</div>
<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> shield[32];</div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> hull[32];</div>
<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> range[32];</div>
<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> heading[32];</div>
<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> speed[32];</div>
<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> orders[64];</div>
<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> psv[32];</div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">char</span> act[32];</div>
<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;</div>
<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;        <span class="keywordtype">int</span>   show_labels = <a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a> &gt; 640;</div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        <span class="keywordtype">int</span>   full_info   = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;        <span class="keywordtype">int</span>   shield_val  = seln-&gt;<a class="code" href="class_ship.html#a06991e72c4adc3bec1ce731b92649ef4">ShieldStrength</a>();</div>
<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;        <span class="keywordtype">int</span>   hull_val    = seln-&gt;<a class="code" href="class_ship.html#a91c47209ae5661196fc086e9bbcf22a3">HullStrength</a>();</div>
<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;</div>
<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;        <span class="keywordflow">if</span> (shield_val &lt; 0) shield_val = 0;</div>
<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        <span class="keywordflow">if</span> (hull_val   &lt; 0) hull_val   = 0;</div>
<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div>
<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        sprintf_s(name,     <span class="stringliteral">&quot;%s&quot;</span>,     seln-&gt;<a class="code" href="class_physical.html#a805a89f8e93e2e66452b5cb6ab0c5f6b">Name</a>());</div>
<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div>
<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;        <span class="keywordflow">if</span> (show_labels) {</div>
<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;                sprintf_s(shield,   <span class="stringliteral">&quot;%s %03d&quot;</span>, <a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;HUDView.symbol.shield&quot;</span>).data(), shield_val);</div>
<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;                sprintf_s(hull,     <span class="stringliteral">&quot;%s %03d&quot;</span>, <a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;HUDView.symbol.hull&quot;</span>).data(),   hull_val);</div>
<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;        }</div>
<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;                sprintf_s(shield,   <span class="stringliteral">&quot;%03d&quot;</span>, shield_val);</div>
<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;                sprintf_s(hull,     <span class="stringliteral">&quot;%03d&quot;</span>, hull_val);</div>
<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;        }</div>
<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;</div>
<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;        <a class="code" href="_format_util_8cpp.html#a7964be426151fc6dfdaaa17d69de742d">FormatNumberExp</a>(range, <a class="code" href="struct_point.html">Point</a>(seln-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>()-<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>()).length()/1000);</div>
<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;        strcat_s(range,     <span class="stringliteral">&quot; km&quot;</span>);</div>
<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        sprintf_s(heading,  <span class="stringliteral">&quot;%03d %s&quot;</span>, (<span class="keywordtype">int</span>) (seln-&gt;<a class="code" href="class_ship.html#a0d2b7974686fd50c057aa8503f8f7e77">CompassHeading</a>() / <a class="code" href="_geometry_8h.html#a530d0fdbd8b1d8b27d9dffd58969e394">DEGREES</a>), <a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;HUDView.symbol.degrees&quot;</span>).<a class="code" href="class_text.html#aae848844d712fd439b42fe6fb8d89bd6">data</a>());</div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;</div>
<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        <span class="keywordtype">double</span> ss = seln-&gt;<a class="code" href="class_physical.html#a60c5e5f05f780f8accae363e9748131c">Velocity</a>().<a class="code" href="struct_point.html#a8ebcce847b8c214b7351904ce60f5518">length</a>();</div>
<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        <span class="keywordflow">if</span> (seln-&gt;<a class="code" href="class_physical.html#a60c5e5f05f780f8accae363e9748131c">Velocity</a>() * seln-&gt;<a class="code" href="class_physical.html#a2fba0c03cbd4afade7da4fc1e5bb0c0b">Heading</a>() &lt; 0)</div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        ss = -ss;</div>
<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;        <a class="code" href="_format_util_8cpp.html#a7964be426151fc6dfdaaa17d69de742d">FormatNumberExp</a>(speed, ss);</div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;        strcat_s(speed,     <span class="stringliteral">&quot; m/s&quot;</span>);</div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div>
<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;        <a class="code" href="class_contact.html">Contact</a>* contact = 0;</div>
<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;</div>
<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;        <span class="comment">// always recognize ownside:</span></div>
<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;        <span class="keywordflow">if</span> (seln-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() != <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>()) {</div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;                <a class="code" href="class_list_iter.html">ListIter&lt;Contact&gt;</a> c = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a020ac1c3a07790d9f88eef601b08045d">ContactList</a>();</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;                <span class="keywordflow">while</span> (++c) {</div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;                        <span class="keywordflow">if</span> (c-&gt;<a class="code" href="class_contact.html#ade86a4b0e979ca7f818da017d6eb58ae">GetShip</a>() == seln) {</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;                                contact = c.<a class="code" href="class_list_iter.html#a70cb1260924c01a38c4a68552120a5e0">value</a>();</div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;                                <span class="keywordflow">if</span> (c-&gt;<a class="code" href="class_contact.html#a8d6b667fe8fb635b799091cad00d783f">GetIFF</a>(<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) &gt; seln-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>()) {</div>
<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;                                        sprintf_s(name, <span class="stringliteral">&quot;%s %04d&quot;</span>, <a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.contact&quot;</span>).data(), seln-&gt;<a class="code" href="class_ship.html#aa249ce208ad4b7379f71a8cb2d47b150">GetContactID</a>());</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;                                        full_info = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;                                }</div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;</div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;                                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;                        }</div>
<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;                }</div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        }</div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;        <span class="keywordflow">if</span> (show_labels) {</div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a264907a4e3a204f1371b46b25bc5ed09">SetColor</a>(txt_color);</div>
<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a3662c4dee7f112697654922a2540dce5">SetAlpha</a>(1);</div>
<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;</div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.name&quot;</span>), 5, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;                label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.type&quot;</span>), 5, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;                label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;</div>
<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;                <span class="keywordflow">if</span> (full_info) {</div>
<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;                        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.shield&quot;</span>), 5, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;                        label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;                        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.hull&quot;</span>), 5, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;                        label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;                }</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.range&quot;</span>),  4, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;                label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;</div>
<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;                <span class="keywordflow">if</span> (full_info) {</div>
<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;                        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.speed&quot;</span>),  4, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;                        label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;                        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.heading&quot;</span>),  4, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;                        label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;                }</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;                        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.passive&quot;</span>),  4, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                        label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;                        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.active&quot;</span>),  4, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;                        label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;                }</div>
<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;        }</div>
<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;</div>
<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(name, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;</div>
<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;        <span class="keywordflow">if</span> (full_info) {</div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;                sprintf_s(design, <span class="stringliteral">&quot;%s %s&quot;</span>, seln-&gt;<a class="code" href="class_ship.html#a0037614f53cb27168c661028f2af2603">Abbreviation</a>(), seln-&gt;<a class="code" href="class_ship.html#a6fd3887d24901d505be195335ff3b565">Design</a>()-&gt;<a class="code" href="class_ship_design.html#a5e0523393510ffb56218bd408ff1ff4a">display_name</a>);</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(design, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;        }</div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;                <span class="keywordflow">if</span> (seln-&gt;<a class="code" href="class_ship.html#aad13fe948c87ff5359b29ccfb69bcbc0">IsStarship</a>())</div>
<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.starship&quot;</span>), 8, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;                <span class="keywordflow">else</span></div>
<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.fighter&quot;</span>),  7, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;</div>
<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;        }</div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;</div>
<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;        <span class="keywordflow">if</span> (full_info) {</div>
<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(shield, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;</div>
<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(hull, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;        }</div>
<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;</div>
<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(range, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;        info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;</div>
<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;        <span class="keywordflow">if</span> (full_info) {</div>
<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(speed, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;</div>
<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(heading, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;                <span class="keywordflow">if</span> (seln-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>()) {</div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;                        <a class="code" href="class_instruction.html">Instruction</a>* instr = seln-&gt;<a class="code" href="class_ship.html#ad4b1ede340f2a31d17a82a266c7f3f5b">GetRadioOrders</a>();</div>
<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;                        <span class="keywordflow">if</span> (instr &amp;&amp; instr-&gt;<a class="code" href="class_instruction.html#a445a8e3c2e4f3869893125d1b5075bd0">Action</a>()) {</div>
<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;                                strcpy_s(orders, <a class="code" href="class_radio_message.html#a286b4fb2691238c1e13a4bf15b77f86d">RadioMessage::ActionName</a>(instr-&gt;<a class="code" href="class_instruction.html#a445a8e3c2e4f3869893125d1b5075bd0">Action</a>()));</div>
<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;</div>
<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;                                <span class="keywordflow">if</span> (instr-&gt;<a class="code" href="class_instruction.html#a445a8e3c2e4f3869893125d1b5075bd0">Action</a>() == <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af8047234742ddbba04628ac968a51a27">RadioMessage::QUANTUM_TO</a>) {</div>
<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;                                        strcat_s(orders, <span class="stringliteral">&quot; &quot;</span>);</div>
<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;                                        strcat_s(orders, instr-&gt;<a class="code" href="class_instruction.html#a937b81df4dec47145272b692b839ae55">RegionName</a>());</div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;                                }</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;                        }</div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;                        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;                                *orders = 0;</div>
<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;                        }</div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;</div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;                        <span class="keywordflow">if</span> (*orders) {</div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;                                <span class="keywordflow">if</span> (show_labels) {</div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;                                        <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.orders&quot;</span>), 5, label_rect, DT_LEFT);</div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;                                        label_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;                                }</div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;</div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;                                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(orders, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;                                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;                        }</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;                }</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;        }</div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;                sprintf_s(psv, <span class="stringliteral">&quot;%03d&quot;</span>, (<span class="keywordtype">int</span>) (contact-&gt;<a class="code" href="class_contact.html#a26ce0eee45feb580be4a975759ea3ee6">PasReturn</a>() * 100.0));</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;                sprintf_s(act, <span class="stringliteral">&quot;%03d&quot;</span>, (<span class="keywordtype">int</span>) (contact-&gt;<a class="code" href="class_contact.html#a511623652bc50db1e52edda2c5e15e5f">ActReturn</a>() * 100.0));</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;</div>
<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;                <span class="keywordflow">if</span> (contact-&gt;<a class="code" href="class_contact.html#a3cb519932405928550df6288767cf0c0">Threat</a>(<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>))</div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;                strcat_s(psv, <span class="stringliteral">&quot; !&quot;</span>);</div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;</div>
<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(psv, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(act, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;        }</div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;</div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;        <span class="comment">/*** XXX DEBUG</span></div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="comment">font-&gt;DrawText(seln-&gt;GetDirectorInfo(), 0, info_rect, DT_LEFT);</span></div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;<span class="comment">info_rect.y += 10;</span></div>
<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="comment">/***/</span></div>
<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;}</div>
<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div>
<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00505"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a1a84cc38c55d12089d0fa32e43b6b6ad">  505</a></span>&#160;<a class="code" href="class_tactical_view.html#a1a84cc38c55d12089d0fa32e43b6b6ad">TacticalView::DrawSelectionList</a>(<a class="code" href="class_list_iter.html">ListIter&lt;Ship&gt;</a> seln)</div>
<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;{</div>
<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;        <span class="keywordtype">int</span>   index = 0;</div>
<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;        <a class="code" href="struct_rect.html">Rect</a>  info_rect(<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>-100, 10, 90, 12);</div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;</div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;        <span class="keywordflow">while</span> (++seln) {</div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;                <span class="keywordtype">char</span> name[64];</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;                sprintf_s(name, <span class="stringliteral">&quot;%s&quot;</span>, seln-&gt;<a class="code" href="class_physical.html#a805a89f8e93e2e66452b5cb6ab0c5f6b">Name</a>());</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;</div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;                <span class="comment">// always recognize ownside:</span></div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;                <span class="keywordflow">if</span> (seln-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() != <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>()) {</div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;                        <a class="code" href="class_list_iter.html">ListIter&lt;Contact&gt;</a> c = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a020ac1c3a07790d9f88eef601b08045d">ContactList</a>();</div>
<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;                        <span class="keywordflow">while</span> (++c) {</div>
<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;                                <span class="keywordflow">if</span> (c-&gt;<a class="code" href="class_contact.html#ade86a4b0e979ca7f818da017d6eb58ae">GetShip</a>() == seln.<a class="code" href="class_list_iter.html#a70cb1260924c01a38c4a68552120a5e0">value</a>()) {</div>
<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;                                        <span class="keywordflow">if</span> (c-&gt;<a class="code" href="class_contact.html#a8d6b667fe8fb635b799091cad00d783f">GetIFF</a>(<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) &gt; seln-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>()) {</div>
<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;                                                sprintf_s(name, <span class="stringliteral">&quot;%s %04d&quot;</span>, <a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.contact&quot;</span>).data(), seln-&gt;<a class="code" href="class_ship.html#aa249ce208ad4b7379f71a8cb2d47b150">GetContactID</a>());</div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;                                        }</div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;</div>
<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;                                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;                                }</div>
<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;                        }</div>
<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;                }</div>
<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;</div>
<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(name, 0, info_rect, DT_LEFT);</div>
<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;                info_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> += 10;</div>
<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;                index++;</div>
<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;</div>
<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;                <span class="keywordflow">if</span> (index &gt;= 10)</div>
<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;        }</div>
<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;}</div>
<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;</div>
<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;</div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00540"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a84a732ec1b0b4e90bb9607d00ad768fe">  540</a></span>&#160;<a class="code" href="class_tactical_view.html#a84a732ec1b0b4e90bb9607d00ad768fe">TacticalView::DoMouseFrame</a>()</div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;{</div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;        <span class="keyword">static</span> DWORD rbutton_latch = 0;</div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;</div>
<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;        <a class="code" href="class_starshatter.html">Starshatter</a>* stars = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">Starshatter::GetInstance</a>();</div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;</div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;        <span class="keywordflow">if</span> (stars-&gt;<a class="code" href="class_starshatter.html#a7989759bf09a0f75e90938069f35db84">InCutscene</a>())</div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;</div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_mouse.html#a50d2ad2775a22806850de1f7f3a2d3f0">Mouse::RButton</a>()) {</div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;                <a class="code" href="class_mouse_controller.html">MouseController</a>* mouse_con = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">MouseController::GetInstance</a>();</div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;                <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#ab88b0e8be6832d41a129130cd9d2ca53">right_down</a> &amp;&amp; (!mouse_con || !mouse_con-&gt;<a class="code" href="class_mouse_controller.html#a1aed285d159dbdc768445470e86534b4">Active</a>())) {</div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;                        rbutton_latch = <a class="code" href="class_game.html#a321790057c657d52f3585f883cdbc507">Game::RealTime</a>();</div>
<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;                        <a class="code" href="class_tactical_view.html#ab88b0e8be6832d41a129130cd9d2ca53">right_down</a>    = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;                }</div>
<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;        }</div>
<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a> &amp;&amp; <a class="code" href="class_tactical_view.html#ab88b0e8be6832d41a129130cd9d2ca53">right_down</a> &amp;&amp; (<a class="code" href="class_game.html#a321790057c657d52f3585f883cdbc507">Game::RealTime</a>() - rbutton_latch &lt; 250)) {</div>
<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;                        <a class="code" href="class_ship.html">Ship</a>* seln = <a class="code" href="class_tactical_view.html#aadde283b069805afabd48ebe85bff64a">WillSelectAt</a>(<a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>(), <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>());</div>
<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;</div>
<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;                        <span class="keywordflow">if</span> (seln &amp;&amp; <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a9b3fb3b31ca2d24c54bf20ac110f3907">IsSelected</a>(seln)    &amp;&amp; </div>
<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;                                        seln-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() &amp;&amp;</div>
<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;                                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a791d746356184004b55fa8ad874ac31e">GetElement</a>()-&gt;<a class="code" href="class_element.html#ad420f3eb581b74dbb296963a23fefd7a">CanCommand</a>(seln-&gt;<a class="code" href="class_ship.html#a791d746356184004b55fa8ad874ac31e">GetElement</a>())) {</div>
<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;</div>
<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;                                <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a> = seln;</div>
<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;                                <a class="code" href="class_sim_observer.html#ae6c9a20e4fd0bcb3590f983a391dd451">Observe</a>(<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>);</div>
<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;                        }</div>
<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;</div>
<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;                        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> &amp;&amp; seln == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> &amp;&amp; </div>
<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;                                        (!<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_physical.html#afb266107493cf3b901d794903d6f1077">GetDirector</a>() || </div>
<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;                                                <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_physical.html#afb266107493cf3b901d794903d6f1077">GetDirector</a>()-&gt;<a class="code" href="class_director.html#a3b5abe29979a016ef78c40ebf82ace4a">Type</a>() != <a class="code" href="class_ship_ctrl.html#a77d1693a766ae07dcdc6ba3b1b2d0ca1ac38d672e0d43ff4c68e8a6b221f75d39">ShipCtrl::DIR_TYPE</a>)) {</div>
<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div>
<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;                                <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a> = seln;</div>
<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;                        }</div>
<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;</div>
<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;                        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;                                <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a> = 0;</div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;                        }</div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;                }</div>
<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;</div>
<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;                <a class="code" href="class_tactical_view.html#ab88b0e8be6832d41a129130cd9d2ca53">right_down</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;        }</div>
<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;</div>
<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>)</div>
<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;        <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a8b30ce1a9cafaf6e3ff44cbce97b0293">DoMouseFrame</a>();</div>
<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;</div>
<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;        <a class="code" href="class_mouse_controller.html">MouseController</a>* mouse_con = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">MouseController::GetInstance</a>();</div>
<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;</div>
<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;        <span class="keywordflow">if</span> (!mouse_con || !mouse_con-&gt;<a class="code" href="class_mouse_controller.html#a1aed285d159dbdc768445470e86534b4">Active</a>()) {</div>
<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_mouse.html#a02ed35f8f89913d39a5dc93e82d1ec77">Mouse::LButton</a>()) {</div>
<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;                        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a9cc5ec742f048b599e671af2b908ba64">mouse_down</a>) {</div>
<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;                                <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.x = <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>();</div>
<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;                                <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.y = <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>();</div>
<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;</div>
<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;                                <a class="code" href="class_tactical_view.html#af8e9f218cf93874ee2c47ac20c9390c4">shift_down</a> = <a class="code" href="class_keyboard.html#add5b560d7714705a93a118ecffd7fb01">Keyboard::KeyDown</a>(VK_SHIFT);</div>
<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;                        }</div>
<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;</div>
<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;                        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;                                <span class="keywordflow">if</span> (<a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>() &lt; <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.x) {</div>
<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a64d1ef14e429e1816539de4c54361e55">x</a> = <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>();</div>
<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a> = <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.x - <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>();</div>
<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;                                }</div>
<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;                                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a64d1ef14e429e1816539de4c54361e55">x</a> = <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.x;</div>
<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a> = <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>() - <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.x;</div>
<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;                                }</div>
<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;</div>
<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;                                <span class="keywordflow">if</span> (<a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>() &lt; <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.y) {</div>
<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> = <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>();</div>
<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#af9111a21106ba65952da60320ea91df6">h</a> = <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.y - <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>();</div>
<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;                                }</div>
<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;                                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> = <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.y;</div>
<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#af9111a21106ba65952da60320ea91df6">h</a> = <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>() - <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.y;</div>
<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;                                }</div>
<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;</div>
<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;                                <span class="comment">// don&#39;t draw seln rectangle while zooming:</span></div>
<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;                                <span class="keywordflow">if</span> (<a class="code" href="class_mouse.html#a50d2ad2775a22806850de1f7f3a2d3f0">Mouse::RButton</a>() || <a class="code" href="class_tactical_view.html#a03934c680c61f178473e2697ecb6b761">show_move</a> || <a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a>) {</div>
<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a> = 0;</div>
<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;                                        <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>.<a class="code" href="struct_rect.html#af9111a21106ba65952da60320ea91df6">h</a> = 0;</div>
<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;                                }</div>
<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;</div>
<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;                                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;                                        <a class="code" href="class_tactical_view.html#a04bb7dcf5157557b9903646684984963">SelectRect</a>(<a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a>);</div>
<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;                                }</div>
<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;                        }</div>
<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;</div>
<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;                        <a class="code" href="class_tactical_view.html#a9cc5ec742f048b599e671af2b908ba64">mouse_down</a> = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;                }</div>
<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;</div>
<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a9cc5ec742f048b599e671af2b908ba64">mouse_down</a>) {</div>
<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;                                <span class="keywordtype">int</span> mouse_x  = <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>();</div>
<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;                                <span class="keywordtype">int</span> mouse_y  = <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>();</div>
<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;</div>
<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;                                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a> &amp;&amp; <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a95383623de2fd1bf25d8ddd421092f5e">GetAction</a>()) {</div>
<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;                                        <a class="code" href="class_tactical_view.html#af4c9c466af5ec84469d97058c74797b5">ProcessMenuItem</a>(<a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a95383623de2fd1bf25d8ddd421092f5e">GetAction</a>());</div>
<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;                                        <a class="code" href="class_mouse.html#a46b9aaeff75f2b50d3e188ba02379293">Mouse::Show</a>(<span class="keyword">true</span>);</div>
<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;                                }</div>
<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;                                <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a03934c680c61f178473e2697ecb6b761">show_move</a>) {</div>
<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;                                        <a class="code" href="class_tactical_view.html#ab9264e3b9f2c56d30b386a76d1038eab">SendMove</a>();</div>
<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;                                        <a class="code" href="class_tactical_view.html#a03934c680c61f178473e2697ecb6b761">show_move</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;                                        <a class="code" href="class_mouse.html#a46b9aaeff75f2b50d3e188ba02379293">Mouse::Show</a>(<span class="keyword">true</span>);</div>
<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;                                }</div>
<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;                                <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a>) {</div>
<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;                                        <a class="code" href="class_tactical_view.html#a42a08279d4362a47c59346b89c46e88c">SendAction</a>();</div>
<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;                                        <a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;                                        <a class="code" href="class_mouse.html#a46b9aaeff75f2b50d3e188ba02379293">Mouse::Show</a>(<span class="keyword">true</span>);</div>
<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;                                }</div>
<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;                                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;                                        <span class="keywordflow">if</span> (!<a class="code" href="class_h_u_d_view.html#a1b8c0066eb07a93d49d4cb8552b36b4d">HUDView::IsMouseLatched</a>() &amp;&amp; !<a class="code" href="class_wep_view.html#a6a89ede2f127e19efa2e5e1c2592bc3c">WepView::IsMouseLatched</a>()) {</div>
<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;                                                <span class="keywordtype">int</span> dx = (int) fabs((<span class="keywordtype">double</span>) (mouse_x - <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.x));</div>
<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;                                                <span class="keywordtype">int</span> dy = (int) fabs((<span class="keywordtype">double</span>) (mouse_y - <a class="code" href="class_tactical_view.html#af6a80f4aed80689223152a122d94e434">mouse_start</a>.y));</div>
<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;</div>
<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;                                                <span class="keyword">static</span> DWORD click_time = 0;</div>
<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;</div>
<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;                                                <span class="keywordflow">if</span> (dx &lt; 3 &amp;&amp; dy &lt; 3) {</div>
<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;                                                        <span class="keywordtype">bool</span> hit = <a class="code" href="class_tactical_view.html#a2ad45597c8690fc1e5a117f2958892aa">SelectAt</a>(mouse_x, mouse_y);</div>
<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;</div>
<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;                                                        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#aad13fe948c87ff5359b29ccfb69bcbc0">IsStarship</a>() &amp;&amp; <a class="code" href="class_game.html#a321790057c657d52f3585f883cdbc507">Game::RealTime</a>() - click_time &lt; 350)</div>
<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;                                                        <a class="code" href="class_tactical_view.html#a358e1febde9fc29d864ae197b4d0e02d">SetHelm</a>(hit);</div>
<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;</div>
<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;                                                        click_time = <a class="code" href="class_game.html#a321790057c657d52f3585f883cdbc507">Game::RealTime</a>();</div>
<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;                                                }</div>
<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;                                        }</div>
<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;                                }</div>
<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;</div>
<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;                                <a class="code" href="class_tactical_view.html#a55c18c6b0c82386a7a1b57e71443f429">mouse_rect</a> = <a class="code" href="struct_rect.html">Rect</a>();</div>
<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;                                <a class="code" href="class_tactical_view.html#a9cc5ec742f048b599e671af2b908ba64">mouse_down</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;                        }</div>
<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;                }</div>
<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;        }</div>
<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;</div>
<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a> &amp;&amp; !<a class="code" href="class_tactical_view.html#a9cc5ec742f048b599e671af2b908ba64">mouse_down</a> &amp;&amp; !<a class="code" href="class_tactical_view.html#ab88b0e8be6832d41a129130cd9d2ca53">right_down</a>) {</div>
<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;                <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.x = <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>();</div>
<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;                <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.y = <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>();</div>
<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;        }</div>
<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;}</div>
<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;</div>
<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;</div>
<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00682"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a2ad45597c8690fc1e5a117f2958892aa">  682</a></span>&#160;<a class="code" href="class_tactical_view.html#a2ad45597c8690fc1e5a117f2958892aa">TacticalView::SelectAt</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y)</div>
<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;{</div>
<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;</div>
<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;        <a class="code" href="class_ship.html">Ship</a>* selection = <a class="code" href="class_tactical_view.html#aadde283b069805afabd48ebe85bff64a">WillSelectAt</a>(x,y);</div>
<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;</div>
<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;        <span class="keywordflow">if</span> (selection &amp;&amp; <a class="code" href="class_tactical_view.html#af8e9f218cf93874ee2c47ac20c9390c4">shift_down</a>)</div>
<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a882257be36111642f1822752a4f413da">SetTarget</a>(selection);</div>
<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;</div>
<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a> &amp;&amp; selection)</div>
<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;        <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#af92d1bb5ab3fc892a5730d4e54aa052b">SetSelection</a>(selection);</div>
<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;</div>
<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;        <span class="keywordflow">return</span> selection != 0;</div>
<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;}</div>
<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;</div>
<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;</div>
<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00700"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a04bb7dcf5157557b9903646684984963">  700</a></span>&#160;<a class="code" href="class_tactical_view.html#a04bb7dcf5157557b9903646684984963">TacticalView::SelectRect</a>(<span class="keyword">const</span> <a class="code" href="struct_rect.html">Rect</a>&amp; rect)</div>
<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;{</div>
<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;        <span class="keywordtype">bool</span> result = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;</div>
<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> || !<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>) <span class="keywordflow">return</span> result;</div>
<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;</div>
<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;        <span class="keywordflow">if</span> (rect.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a> &gt; 8 || rect.<a class="code" href="struct_rect.html#af9111a21106ba65952da60320ea91df6">h</a> &gt; 8)</div>
<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;        <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a5cfc1b7af2adcd4f303895629ee9612f">ClearSelection</a>();</div>
<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;</div>
<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;        <span class="comment">// check distance to each contact:</span></div>
<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;        <a class="code" href="class_list.html">List&lt;Contact&gt;</a>&amp; contact_list = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a020ac1c3a07790d9f88eef601b08045d">ContactList</a>();</div>
<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;</div>
<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a4b825ce971a624612b90493f6e895c21">NumContacts</a>(); i++) {</div>
<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;                <a class="code" href="class_ship.html">Ship</a>* test = contact_list[i]-&gt;GetShip();</div>
<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;</div>
<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;                <span class="keywordflow">if</span> (test &amp;&amp; test != <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;</div>
<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;                        <a class="code" href="struct_point.html">Point</a> test_loc = test-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>();</div>
<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(test_loc);</div>
<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;</div>
<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;                        <span class="keywordflow">if</span> (test_loc.<a class="code" href="struct_point.html#a05ba3b1dfcb19430582ae953cbbfbded">z</a> &gt; 1) {</div>
<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;                                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(test_loc);</div>
<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;</div>
<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;                                <span class="keywordflow">if</span> (rect.<a class="code" href="struct_rect.html#a313d99d90704af63f9efa437bbbf453d">Contains</a>((<span class="keywordtype">int</span>) test_loc.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>, (<span class="keywordtype">int</span>) test_loc.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>)) {</div>
<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;                                        <span class="comment">// shift-select targets:</span></div>
<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;                                        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#af8e9f218cf93874ee2c47ac20c9390c4">shift_down</a>) {</div>
<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;                                                <span class="keywordflow">if</span> (test-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() == 0 || test-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>())</div>
<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;                                                <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;</div>
<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;                                                <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a882257be36111642f1822752a4f413da">SetTarget</a>(test);</div>
<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;                                                result = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;                                        }</div>
<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;                                        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;                                                <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a46db4081010d4e8a495cb263c6fa4d6e">AddSelection</a>(test);</div>
<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;                                                result = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;                                        }</div>
<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;                                }</div>
<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;                        }</div>
<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;                }</div>
<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        }</div>
<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;</div>
<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="comment">// select self only in orbit cam</span></div>
<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#af8e9f218cf93874ee2c47ac20c9390c4">shift_down</a> &amp;&amp; <a class="code" href="class_camera_director.html#ac46ea2697d8abbf9ac27c1ef8b14134e">CameraDirector::GetCameraMode</a>() == <a class="code" href="class_camera_director.html#a8319ef2a38ac40984c3cc6fdebda4c3fa7c58fd890beecca1b4233f8670610106">CameraDirector::MODE_ORBIT</a>) {</div>
<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;                <a class="code" href="struct_point.html">Point</a> test_loc = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>();</div>
<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(test_loc);</div>
<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;</div>
<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;                <span class="keywordflow">if</span> (test_loc.<a class="code" href="struct_point.html#a05ba3b1dfcb19430582ae953cbbfbded">z</a> &gt; 1) {</div>
<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(test_loc);</div>
<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;</div>
<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;                        <span class="keywordflow">if</span> (rect.<a class="code" href="struct_rect.html#a313d99d90704af63f9efa437bbbf453d">Contains</a>((<span class="keywordtype">int</span>) test_loc.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>, (<span class="keywordtype">int</span>) test_loc.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>)) {</div>
<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;                                <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a46db4081010d4e8a495cb263c6fa4d6e">AddSelection</a>(<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>);</div>
<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;                                result = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;                        }</div>
<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;                }</div>
<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;        }</div>
<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;</div>
<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;        <span class="keywordflow">return</span> result;</div>
<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;}</div>
<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;</div>
<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;</div>
<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;<a class="code" href="class_ship.html">Ship</a>*</div>
<div class="line"><a name="l00762"></a><span class="lineno"><a class="code" href="class_tactical_view.html#aadde283b069805afabd48ebe85bff64a">  762</a></span>&#160;<a class="code" href="class_tactical_view.html#aadde283b069805afabd48ebe85bff64a">TacticalView::WillSelectAt</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y)</div>
<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;{</div>
<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;        <a class="code" href="class_ship.html">Ship</a>* selection = 0;</div>
<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;</div>
<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;                <span class="comment">// check distance to each contact:</span></div>
<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;                <a class="code" href="class_list.html">List&lt;Contact&gt;</a>&amp; contact_list = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a020ac1c3a07790d9f88eef601b08045d">ContactList</a>();</div>
<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;</div>
<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;                <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a4b825ce971a624612b90493f6e895c21">NumContacts</a>(); i++) {</div>
<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;                        <a class="code" href="class_ship.html">Ship</a>* test = contact_list[i]-&gt;GetShip();</div>
<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;</div>
<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;                        <span class="keywordflow">if</span> (test) {</div>
<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;                                <span class="comment">// shift-select targets:</span></div>
<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;                                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#af8e9f218cf93874ee2c47ac20c9390c4">shift_down</a>) {</div>
<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;                                        <span class="keywordflow">if</span> (test-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() == 0 || test-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>())</div>
<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;                                        <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;                                }</div>
<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;</div>
<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;                                <a class="code" href="class_graphic.html">Graphic</a>* g = test-&gt;<a class="code" href="class_physical.html#a6d29a1d011f1ab48bcea980ded24ce4d">Rep</a>();</div>
<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;                                <span class="keywordflow">if</span> (g) {</div>
<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;                                        <a class="code" href="struct_rect.html">Rect</a> r = g-&gt;<a class="code" href="class_graphic.html#a5fb16d4690c8d15dc440daca59f6ce69">ScreenRect</a>();</div>
<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;</div>
<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;                                        <span class="keywordflow">if</span> (r.<a class="code" href="struct_rect.html#a64d1ef14e429e1816539de4c54361e55">x</a> == 2000 &amp;&amp; r.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> == 2000 &amp;&amp; r.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a> == 0 &amp;&amp; r.<a class="code" href="struct_rect.html#af9111a21106ba65952da60320ea91df6">h</a> == 0) {</div>
<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;                                                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>) {</div>
<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;                                                        <a class="code" href="struct_point.html">Point</a> loc = test-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>();</div>
<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;                                                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(loc);</div>
<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;                                                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(loc);</div>
<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;</div>
<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;                                                        r.<a class="code" href="struct_rect.html#a64d1ef14e429e1816539de4c54361e55">x</a> = (int) loc.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>;</div>
<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;                                                        r.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> = (<span class="keywordtype">int</span>) loc.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>;</div>
<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;                                                }</div>
<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;                                        }</div>
<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;</div>
<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;                                        <span class="keywordflow">if</span> (r.<a class="code" href="struct_rect.html#a36b6c8bb15c7706c3b2b3e91345e11f8">w</a> &lt; 20 || r.<a class="code" href="struct_rect.html#af9111a21106ba65952da60320ea91df6">h</a> &lt; 20)</div>
<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;                                        r.<a class="code" href="struct_rect.html#aaf7b062bbef6819c1104f6de549c58c7">Inflate</a>(20,20);</div>
<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;                                        <span class="keywordflow">else</span></div>
<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;                                        r.<a class="code" href="struct_rect.html#aaf7b062bbef6819c1104f6de549c58c7">Inflate</a>(10,10);</div>
<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;</div>
<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;                                        <span class="keywordflow">if</span> (r.<a class="code" href="struct_rect.html#a313d99d90704af63f9efa437bbbf453d">Contains</a>(x,y)) {</div>
<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;                                                selection = test;</div>
<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;                                                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;                                        }</div>
<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;                                }</div>
<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;                        }</div>
<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160;                }</div>
<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;</div>
<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;                <span class="keywordflow">if</span> (!selection &amp;&amp; !<a class="code" href="class_tactical_view.html#af8e9f218cf93874ee2c47ac20c9390c4">shift_down</a>) {</div>
<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;                        <a class="code" href="class_graphic.html">Graphic</a>* g = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_physical.html#a6d29a1d011f1ab48bcea980ded24ce4d">Rep</a>();</div>
<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;                        <span class="keywordflow">if</span> (g) {</div>
<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;                                <a class="code" href="struct_rect.html">Rect</a> r = g-&gt;<a class="code" href="class_graphic.html#a5fb16d4690c8d15dc440daca59f6ce69">ScreenRect</a>();</div>
<div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;</div>
<div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;                                <span class="keywordflow">if</span> (r.<a class="code" href="struct_rect.html#a313d99d90704af63f9efa437bbbf453d">Contains</a>(x,y)) {</div>
<div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;                                        selection = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>;</div>
<div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;                                }</div>
<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;                        }</div>
<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;                }</div>
<div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;        }</div>
<div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;</div>
<div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;        <span class="keywordflow">if</span> (selection == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> &amp;&amp; <a class="code" href="class_camera_director.html#ac46ea2697d8abbf9ac27c1ef8b14134e">CameraDirector::GetCameraMode</a>() != <a class="code" href="class_camera_director.html#a8319ef2a38ac40984c3cc6fdebda4c3fa7c58fd890beecca1b4233f8670610106">CameraDirector::MODE_ORBIT</a>)</div>
<div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;        selection = 0;</div>
<div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;</div>
<div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;        <span class="keywordflow">return</span> selection;</div>
<div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;}</div>
<div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;</div>
<div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;</div>
<div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00829"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a358e1febde9fc29d864ae197b4d0e02d">  829</a></span>&#160;<a class="code" href="class_tactical_view.html#a358e1febde9fc29d864ae197b4d0e02d">TacticalView::SetHelm</a>(<span class="keywordtype">bool</span> approach)</div>
<div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;{</div>
<div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;        <a class="code" href="struct_point.html">Point</a> delta;</div>
<div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;</div>
<div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;        <span class="comment">// double-click on ship: set helm to approach</span></div>
<div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a> &amp;&amp; approach) {</div>
<div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;                <a class="code" href="class_list_iter.html">ListIter&lt;Ship&gt;</a> iter = <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a1f9cf01d6628139497893bbaca244805">GetSelection</a>();</div>
<div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;                ++iter;</div>
<div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;                <a class="code" href="class_ship.html">Ship</a>* selection = iter.<a class="code" href="class_list_iter.html#a70cb1260924c01a38c4a68552120a5e0">value</a>();</div>
<div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;</div>
<div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;                <span class="keywordflow">if</span> (selection != <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;                        delta = selection-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>() - <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>();</div>
<div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;                        delta.<a class="code" href="struct_point.html#a6efd403e2a6c0aa686e278d244d5e525">Normalize</a>();</div>
<div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;                }</div>
<div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;        }</div>
<div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;</div>
<div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;        <span class="comment">// double-click on space: set helm in direction</span></div>
<div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;        <span class="keywordflow">if</span> (delta.<a class="code" href="struct_point.html#a8ebcce847b8c214b7351904ce60f5518">length</a>() &lt; 1) {</div>
<div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;                <span class="keywordtype">int</span> mx = <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>();</div>
<div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;                <span class="keywordtype">int</span> my = <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>();</div>
<div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;</div>
<div class="line"><a name="l00850"></a><span class="lineno">  850</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>) {</div>
<div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;                        <span class="keywordtype">double</span> focal_dist  = <a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a> / tan(<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#ae94b7cd2c8cf79e09af05ede625164e3">XAngle</a>());</div>
<div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;</div>
<div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;                        delta = <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a2fca456713d9d91ea07df80f1048196f">vpn</a>() * focal_dist +</div>
<div class="line"><a name="l00854"></a><span class="lineno">  854</span>&#160;                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a325968ea53efb3208e090697074acf30">vup</a>() * -1 * (my-<a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a>/2) +</div>
<div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a96bfb757bba52751f57105a08b2682d4">vrt</a>() * (mx-<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>/2);</div>
<div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160;</div>
<div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;                        delta.<a class="code" href="struct_point.html#a6efd403e2a6c0aa686e278d244d5e525">Normalize</a>();</div>
<div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;                }</div>
<div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;</div>
<div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160;                        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;                }</div>
<div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;        }</div>
<div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;</div>
<div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;        <span class="keywordtype">double</span> az = atan2(fabs(delta.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>), delta.<a class="code" href="struct_point.html#a05ba3b1dfcb19430582ae953cbbfbded">z</a>);</div>
<div class="line"><a name="l00866"></a><span class="lineno">  866</span>&#160;        <span class="keywordtype">double</span> el = asin(delta.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>);</div>
<div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;</div>
<div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;        <span class="keywordflow">if</span> (delta.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a> &lt; 0)</div>
<div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;        az *= -1;</div>
<div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;</div>
<div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160;        az += <a class="code" href="_geometry_8h.html#a952eac791b596a61bba0a133a3bb439f">PI</a>;</div>
<div class="line"><a name="l00872"></a><span class="lineno">  872</span>&#160;</div>
<div class="line"><a name="l00873"></a><span class="lineno">  873</span>&#160;        <span class="keywordflow">if</span> (az &gt;= 2*<a class="code" href="_geometry_8h.html#a952eac791b596a61bba0a133a3bb439f">PI</a>)</div>
<div class="line"><a name="l00874"></a><span class="lineno">  874</span>&#160;        az -= 2*<a class="code" href="_geometry_8h.html#a952eac791b596a61bba0a133a3bb439f">PI</a>;</div>
<div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;</div>
<div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a895e09fc4d671544fe7d963d4b62ec97">SetHelmHeading</a>(az);</div>
<div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#afe05f1955ba1829116376d653ba3455e">SetHelmPitch</a>(el);</div>
<div class="line"><a name="l00878"></a><span class="lineno">  878</span>&#160;}</div>
<div class="line"><a name="l00879"></a><span class="lineno">  879</span>&#160;</div>
<div class="line"><a name="l00880"></a><span class="lineno">  880</span>&#160;<span class="comment">// +====================================================================+</span></div>
<div class="line"><a name="l00881"></a><span class="lineno">  881</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;<span class="comment">// TACTICAL COMMUNICATIONS MENU:</span></div>
<div class="line"><a name="l00883"></a><span class="lineno">  883</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00884"></a><span class="lineno">  884</span>&#160;</div>
<div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         main_menu      = 0;</div>
<div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         view_menu      = 0;</div>
<div class="line"><a name="l00887"></a><span class="lineno">  887</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         emcon_menu     = 0;</div>
<div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;</div>
<div class="line"><a name="l00889"></a><span class="lineno">  889</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         fighter_menu   = 0;</div>
<div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         starship_menu  = 0;</div>
<div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         action_menu    = 0;</div>
<div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         formation_menu = 0;</div>
<div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         sensors_menu   = 0;</div>
<div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         quantum_menu   = 0;</div>
<div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;<span class="keyword">static</span> <a class="code" href="class_menu.html">Menu</a>*         farcast_menu   = 0;</div>
<div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;</div>
<div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;<span class="keyword">static</span> <a class="code" href="class_element.html">Element</a>*      dst_elem       = 0;</div>
<div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;</div>
<div class="line"><a name="l00899"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11">  899</a></span>&#160;<span class="keyword">enum</span>   <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11">VIEW_MENU</a> {</div>
<div class="line"><a name="l00900"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ae8906fcf27e246f539f757cc3381199d">  900</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ae8906fcf27e246f539f757cc3381199d">VIEW_FORWARD</a> = 1000,</div>
<div class="line"><a name="l00901"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a1609e888495e5415c3a07bd1611651f6">  901</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a1609e888495e5415c3a07bd1611651f6">VIEW_CHASE</a>,</div>
<div class="line"><a name="l00902"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a10043594d215cc80f2ef507ae3e4519c">  902</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a10043594d215cc80f2ef507ae3e4519c">VIEW_PADLOCK</a>,</div>
<div class="line"><a name="l00903"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11aec4000d32a0f64824d59fa4f3189b1de">  903</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11aec4000d32a0f64824d59fa4f3189b1de">VIEW_ORBIT</a>,</div>
<div class="line"><a name="l00904"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a84f9d3de91c732d9e1edf5304c7f3a0d">  904</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a84f9d3de91c732d9e1edf5304c7f3a0d">VIEW_NAV</a>,</div>
<div class="line"><a name="l00905"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11afd785aaad2a3108440f66eb51c5100f7">  905</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11afd785aaad2a3108440f66eb51c5100f7">VIEW_WEP</a>,</div>
<div class="line"><a name="l00906"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a38c09de7e92df850fd6dfb78c29267bb">  906</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a38c09de7e92df850fd6dfb78c29267bb">VIEW_ENG</a>,</div>
<div class="line"><a name="l00907"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a549bf484e2010ee8137fb8bbed0c4e3a">  907</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a549bf484e2010ee8137fb8bbed0c4e3a">VIEW_FLT</a>,</div>
<div class="line"><a name="l00908"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a4e10166cd74cc7ad11aee16d31de0467">  908</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a4e10166cd74cc7ad11aee16d31de0467">VIEW_INS</a>,</div>
<div class="line"><a name="l00909"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ac2f5eba37d0ff96e645cfc1bafb0338b">  909</a></span>&#160;        <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ac2f5eba37d0ff96e645cfc1bafb0338b">VIEW_CMD</a></div>
<div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;};</div>
<div class="line"><a name="l00911"></a><span class="lineno">  911</span>&#160;</div>
<div class="line"><a name="l00912"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a6eca7f1488f2209d3971f3ffd383f98c">  912</a></span>&#160;<span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="_tactical_view_8cpp.html#a6eca7f1488f2209d3971f3ffd383f98c">QUANTUM</a> = 2000;</div>
<div class="line"><a name="l00913"></a><span class="lineno"><a class="code" href="_tactical_view_8cpp.html#a6383bfad573b73ed0a221b41860807a3">  913</a></span>&#160;<span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code" href="_tactical_view_8cpp.html#a6383bfad573b73ed0a221b41860807a3">FARCAST</a> = 2001;</div>
<div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;</div>
<div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00916"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a2001bca367916fa22b447bd97c30d800">  916</a></span>&#160;<a class="code" href="class_tactical_view.html#a2001bca367916fa22b447bd97c30d800">TacticalView::Initialize</a>()</div>
<div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;{</div>
<div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">int</span> initialized = 0;</div>
<div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;        <span class="keywordflow">if</span> (initialized) <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;</div>
<div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;        view_menu   = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.view&quot;</span>));</div>
<div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;        view_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.forward&quot;</span>), <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ae8906fcf27e246f539f757cc3381199d">VIEW_FORWARD</a>);</div>
<div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160;        view_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.chase&quot;</span>),   <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a1609e888495e5415c3a07bd1611651f6">VIEW_CHASE</a>);</div>
<div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;        view_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.orbit&quot;</span>),   <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11aec4000d32a0f64824d59fa4f3189b1de">VIEW_ORBIT</a>);</div>
<div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;        view_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.padlock&quot;</span>), <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a10043594d215cc80f2ef507ae3e4519c">VIEW_PADLOCK</a>);</div>
<div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;</div>
<div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;        emcon_menu  = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.emcon&quot;</span>));</div>
<div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;</div>
<div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;        quantum_menu = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.quantum&quot;</span>));</div>
<div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;        farcast_menu = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.farcast&quot;</span>));</div>
<div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;</div>
<div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;        main_menu    = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.main&quot;</span>));</div>
<div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;</div>
<div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;        action_menu = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.action&quot;</span>));</div>
<div class="line"><a name="l00935"></a><span class="lineno">  935</span>&#160;        action_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.engage&quot;</span>),     <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25aebb3dbda4bef696b3fa43756b42cbe07">RadioMessage::ATTACK</a>);</div>
<div class="line"><a name="l00936"></a><span class="lineno">  936</span>&#160;        action_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.bracket&quot;</span>),    <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af76cdb7c21fa629ec66d4939f2afc8c0">RadioMessage::BRACKET</a>);</div>
<div class="line"><a name="l00937"></a><span class="lineno">  937</span>&#160;        action_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.escort&quot;</span>),     <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a94f437f89bd938e97777b1df27925871">RadioMessage::ESCORT</a>);</div>
<div class="line"><a name="l00938"></a><span class="lineno">  938</span>&#160;        action_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.identify&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ae7636e1dee5afbd297214580d4c4891b">RadioMessage::IDENTIFY</a>);</div>
<div class="line"><a name="l00939"></a><span class="lineno">  939</span>&#160;        action_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.hold&quot;</span>),       <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25acba4b2a9d4835417af26c9a44eafeb0a">RadioMessage::WEP_HOLD</a>);</div>
<div class="line"><a name="l00940"></a><span class="lineno">  940</span>&#160;</div>
<div class="line"><a name="l00941"></a><span class="lineno">  941</span>&#160;        formation_menu = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.formation&quot;</span>));</div>
<div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160;        formation_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.diamond&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25aff2c7dfe629618df4225cbcf19ee54ae">RadioMessage::GO_DIAMOND</a>);</div>
<div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;        formation_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.spread&quot;</span>),    <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a377357e9ea0e37ba2a54b0690d92ba7c">RadioMessage::GO_SPREAD</a>);</div>
<div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;        formation_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.box&quot;</span>),       <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a56c1bc4178dae246b13502cdb462b29b">RadioMessage::GO_BOX</a>);</div>
<div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160;        formation_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.trail&quot;</span>),     <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25afe6da826df078b602b5b10829327bb3d">RadioMessage::GO_TRAIL</a>);</div>
<div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;</div>
<div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;        sensors_menu = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.emcon&quot;</span>));</div>
<div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;        sensors_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.emcon-1&quot;</span>),  <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ac305b82af6cfbff0d4791c568beac6c3">RadioMessage::GO_EMCON1</a>);</div>
<div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;        sensors_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.emcon-2&quot;</span>),  <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a7fabf22959ecdd8ce60e8be8cdd93993">RadioMessage::GO_EMCON2</a>);</div>
<div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;        sensors_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.emcon-3&quot;</span>),  <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25abccd2f8bcf2fb7a0a68ecf51f192edc7">RadioMessage::GO_EMCON3</a>);</div>
<div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;        sensors_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.probe&quot;</span>),    <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a0b246ae995e4e11fcd8530e8dc639d39">RadioMessage::LAUNCH_PROBE</a>);</div>
<div class="line"><a name="l00952"></a><span class="lineno">  952</span>&#160;</div>
<div class="line"><a name="l00953"></a><span class="lineno">  953</span>&#160;        fighter_menu = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.context&quot;</span>));</div>
<div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.action&quot;</span>),    action_menu);</div>
<div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.formation&quot;</span>), formation_menu);</div>
<div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.sensors&quot;</span>),   sensors_menu);</div>
<div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.patrol&quot;</span>),    <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ad1acb534c24126048c3abcd4cf331d84">RadioMessage::MOVE_PATROL</a>);</div>
<div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.cancel&quot;</span>),    <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a7cdfe8d3ec2532c654c4979610700da8">RadioMessage::RESUME_MISSION</a>);</div>
<div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<span class="stringliteral">&quot;&quot;</span>, 0);</div>
<div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.rtb&quot;</span>),       <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a3f18533cfe09d992ae57374ab762f946">RadioMessage::RTB</a>);</div>
<div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.dock&quot;</span>),      <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af331f349de85c6c723cd1ff49d9097ba">RadioMessage::DOCK_WITH</a>);</div>
<div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;        fighter_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.farcast&quot;</span>),   farcast_menu);</div>
<div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;</div>
<div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;        starship_menu = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_menu.html">Menu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.menu.context&quot;</span>));</div>
<div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;        starship_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.action&quot;</span>),   action_menu);</div>
<div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;        starship_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.sensors&quot;</span>),  sensors_menu);</div>
<div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;        starship_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.patrol&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ad1acb534c24126048c3abcd4cf331d84">RadioMessage::MOVE_PATROL</a>);</div>
<div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;        starship_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.cancel&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a7cdfe8d3ec2532c654c4979610700da8">RadioMessage::RESUME_MISSION</a>);</div>
<div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;        starship_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<span class="stringliteral">&quot;&quot;</span>, 0);</div>
<div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160;        starship_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.quantum&quot;</span>),  quantum_menu);</div>
<div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;        starship_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.farcast&quot;</span>),  farcast_menu);</div>
<div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;</div>
<div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;        initialized = 1;</div>
<div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;}</div>
<div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;</div>
<div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00977"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a41582c70dc5af1ce69a42f5943a2dd41">  977</a></span>&#160;<a class="code" href="class_tactical_view.html#a41582c70dc5af1ce69a42f5943a2dd41">TacticalView::Close</a>()</div>
<div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;{</div>
<div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;        <span class="keyword">delete</span> view_menu;</div>
<div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;        <span class="keyword">delete</span> emcon_menu;</div>
<div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;        <span class="keyword">delete</span> main_menu;</div>
<div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;        <span class="keyword">delete</span> fighter_menu;</div>
<div class="line"><a name="l00983"></a><span class="lineno">  983</span>&#160;        <span class="keyword">delete</span> starship_menu;</div>
<div class="line"><a name="l00984"></a><span class="lineno">  984</span>&#160;        <span class="keyword">delete</span> action_menu;</div>
<div class="line"><a name="l00985"></a><span class="lineno">  985</span>&#160;        <span class="keyword">delete</span> formation_menu;</div>
<div class="line"><a name="l00986"></a><span class="lineno">  986</span>&#160;        <span class="keyword">delete</span> sensors_menu;</div>
<div class="line"><a name="l00987"></a><span class="lineno">  987</span>&#160;        <span class="keyword">delete</span> quantum_menu;</div>
<div class="line"><a name="l00988"></a><span class="lineno">  988</span>&#160;        <span class="keyword">delete</span> farcast_menu;</div>
<div class="line"><a name="l00989"></a><span class="lineno">  989</span>&#160;}</div>
<div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;</div>
<div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l00992"></a><span class="lineno">  992</span>&#160;</div>
<div class="line"><a name="l00993"></a><span class="lineno">  993</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00994"></a><span class="lineno"><a class="code" href="class_tactical_view.html#af4c9c466af5ec84469d97058c74797b5">  994</a></span>&#160;<a class="code" href="class_tactical_view.html#af4c9c466af5ec84469d97058c74797b5">TacticalView::ProcessMenuItem</a>(<span class="keywordtype">int</span> action)</div>
<div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;{</div>
<div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;        <a class="code" href="class_starshatter.html">Starshatter</a>* stars = <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">Starshatter::GetInstance</a>();</div>
<div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;</div>
<div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;        <span class="keywordflow">switch</span> (action) {</div>
<div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ad1acb534c24126048c3abcd4cf331d84">RadioMessage::MOVE_PATROL</a>:</div>
<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;                <a class="code" href="class_tactical_view.html#a03934c680c61f178473e2697ecb6b761">show_move</a> = <span class="keyword">true</span>;</div>
<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;                <a class="code" href="class_tactical_view.html#a1fcf0d17804cfedbada2fb0f191576fc">base_alt</a>  = 0;</div>
<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;                <a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a>  = 0;</div>
<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;</div>
<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) <a class="code" href="class_tactical_view.html#a1fcf0d17804cfedbada2fb0f191576fc">base_alt</a> = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>().<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>;</div>
<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;</div>
<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25aebb3dbda4bef696b3fa43756b42cbe07">RadioMessage::ATTACK</a>:</div>
<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af76cdb7c21fa629ec66d4939f2afc8c0">RadioMessage::BRACKET</a>:</div>
<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a94f437f89bd938e97777b1df27925871">RadioMessage::ESCORT</a>:</div>
<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ae7636e1dee5afbd297214580d4c4891b">RadioMessage::IDENTIFY</a>:</div>
<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af331f349de85c6c723cd1ff49d9097ba">RadioMessage::DOCK_WITH</a>:</div>
<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;                <a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a> = action;</div>
<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;</div>
<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25acba4b2a9d4835417af26c9a44eafeb0a">RadioMessage::WEP_HOLD</a>:</div>
<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a7cdfe8d3ec2532c654c4979610700da8">RadioMessage::RESUME_MISSION</a>:</div>
<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a3f18533cfe09d992ae57374ab762f946">RadioMessage::RTB</a>:</div>
<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25aff2c7dfe629618df4225cbcf19ee54ae">RadioMessage::GO_DIAMOND</a>:</div>
<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a377357e9ea0e37ba2a54b0690d92ba7c">RadioMessage::GO_SPREAD</a>:</div>
<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a56c1bc4178dae246b13502cdb462b29b">RadioMessage::GO_BOX</a>:</div>
<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25afe6da826df078b602b5b10829327bb3d">RadioMessage::GO_TRAIL</a>:</div>
<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ac305b82af6cfbff0d4791c568beac6c3">RadioMessage::GO_EMCON1</a>:</div>
<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a7fabf22959ecdd8ce60e8be8cdd93993">RadioMessage::GO_EMCON2</a>:</div>
<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25abccd2f8bcf2fb7a0a68ecf51f192edc7">RadioMessage::GO_EMCON3</a>:</div>
<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a0b246ae995e4e11fcd8530e8dc639d39">RadioMessage::LAUNCH_PROBE</a>:</div>
<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) {</div>
<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;                        <a class="code" href="class_element.html">Element</a>* elem = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_ship.html#a791d746356184004b55fa8ad874ac31e">GetElement</a>();</div>
<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;                        <a class="code" href="class_radio_message.html">RadioMessage</a>* msg = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_radio_message.html">RadioMessage</a>(elem, <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>, action);</div>
<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;                        <span class="keywordflow">if</span> (msg)</div>
<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;                        <a class="code" href="class_radio_traffic.html#a12650c86b7d95c5c92f779bc7e754c57">RadioTraffic::Transmit</a>(msg);</div>
<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;                }</div>
<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;                <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;                        <span class="keywordflow">if</span> (action == <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ac305b82af6cfbff0d4791c568beac6c3">RadioMessage::GO_EMCON1</a>)</div>
<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a052631d199eb5726a300734cf83a4a25">SetEMCON</a>(1);</div>
<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;                        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (action == <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a7fabf22959ecdd8ce60e8be8cdd93993">RadioMessage::GO_EMCON2</a>)</div>
<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a052631d199eb5726a300734cf83a4a25">SetEMCON</a>(2);</div>
<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;                        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (action == <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25abccd2f8bcf2fb7a0a68ecf51f192edc7">RadioMessage::GO_EMCON3</a>)</div>
<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a052631d199eb5726a300734cf83a4a25">SetEMCON</a>(3);</div>
<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;                        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (action == <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a0b246ae995e4e11fcd8530e8dc639d39">RadioMessage::LAUNCH_PROBE</a>)</div>
<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#aa48218fe2c66ff8604b9f655bb89ec2e">LaunchProbe</a>();</div>
<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;                }</div>
<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;</div>
<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ae8906fcf27e246f539f757cc3381199d">VIEW_FORWARD</a>:   stars-&gt;<a class="code" href="class_starshatter.html#a9872d8d14b8ff719be9ab31ca38a4f2f">PlayerCam</a>(<a class="code" href="class_camera_director.html#a8319ef2a38ac40984c3cc6fdebda4c3fab49b0fd740788151d167d7cea9eb2260">CameraDirector::MODE_COCKPIT</a>); <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a1609e888495e5415c3a07bd1611651f6">VIEW_CHASE</a>:     stars-&gt;<a class="code" href="class_starshatter.html#a9872d8d14b8ff719be9ab31ca38a4f2f">PlayerCam</a>(<a class="code" href="class_camera_director.html#a8319ef2a38ac40984c3cc6fdebda4c3fa1cbded85550ea0f0184b569742537f31">CameraDirector::MODE_CHASE</a>);   <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a10043594d215cc80f2ef507ae3e4519c">VIEW_PADLOCK</a>:   stars-&gt;<a class="code" href="class_starshatter.html#a9872d8d14b8ff719be9ab31ca38a4f2f">PlayerCam</a>(<a class="code" href="class_camera_director.html#a8319ef2a38ac40984c3cc6fdebda4c3fa4e8c4d72f4a9903cbb11a48145768f4a">CameraDirector::MODE_TARGET</a>);  <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11aec4000d32a0f64824d59fa4f3189b1de">VIEW_ORBIT</a>:     stars-&gt;<a class="code" href="class_starshatter.html#a9872d8d14b8ff719be9ab31ca38a4f2f">PlayerCam</a>(<a class="code" href="class_camera_director.html#a8319ef2a38ac40984c3cc6fdebda4c3fa7c58fd890beecca1b4233f8670610106">CameraDirector::MODE_ORBIT</a>);   <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;</div>
<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a84f9d3de91c732d9e1edf5304c7f3a0d">VIEW_NAV</a>:    <a class="code" href="class_tactical_view.html#a99a329405cd5c40fbea7306fecb6395d">gamescreen</a>-&gt;<a class="code" href="class_game_screen.html#ac431a9c9fa892c4d0e3ffa6f01485832">ShowNavDlg</a>();           <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11afd785aaad2a3108440f66eb51c5100f7">VIEW_WEP</a>:    <a class="code" href="class_tactical_view.html#a99a329405cd5c40fbea7306fecb6395d">gamescreen</a>-&gt;<a class="code" href="class_game_screen.html#a0cac782587bd3dbe52fdf1ac21b5aa8c">ShowWeaponsOverlay</a>();   <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a38c09de7e92df850fd6dfb78c29267bb">VIEW_ENG</a>:    <a class="code" href="class_tactical_view.html#a99a329405cd5c40fbea7306fecb6395d">gamescreen</a>-&gt;<a class="code" href="class_game_screen.html#ab6656238ca1108b95d34f427d2ae0b39">ShowEngDlg</a>();           <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a4e10166cd74cc7ad11aee16d31de0467">VIEW_INS</a>:    <a class="code" href="class_tactical_view.html#aae1808f1bc751411eadce77373cbfa07">HUDView::GetInstance</a>()-&gt;CycleHUDInst(); <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a549bf484e2010ee8137fb8bbed0c4e3a">VIEW_FLT</a>:    <a class="code" href="class_tactical_view.html#a99a329405cd5c40fbea7306fecb6395d">gamescreen</a>-&gt;<a class="code" href="class_game_screen.html#a795b5a1d4c6d24aa2ab9debd700b0ae0">ShowFltDlg</a>();           <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;</div>
<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ac2f5eba37d0ff96e645cfc1bafb0338b">VIEW_CMD</a>:    <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a> &amp;&amp; <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#aad13fe948c87ff5359b29ccfb69bcbc0">IsStarship</a>()) {</div>
<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;                        <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a0497215a8c78ae3a906abf7e5f9928b5">CommandMode</a>();</div>
<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;                }</div>
<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160;</div>
<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a6eca7f1488f2209d3971f3ffd383f98c">QUANTUM</a>:     <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>) {</div>
<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;                        <a class="code" href="class_ship.html">Ship</a>* s = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>;</div>
<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;</div>
<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;                        <span class="keywordflow">if</span> (!s)</div>
<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;                        s = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>;</div>
<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;                        </div>
<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;                        <span class="keywordflow">if</span> (s &amp;&amp; s-&gt;<a class="code" href="class_ship.html#a5e45166f4f0c6887b4bf90e881a67ef1">GetQuantumDrive</a>()) {</div>
<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;                                <a class="code" href="class_quantum_drive.html">QuantumDrive</a>* quantum = s-&gt;<a class="code" href="class_ship.html#a5e45166f4f0c6887b4bf90e881a67ef1">GetQuantumDrive</a>();</div>
<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;                                <span class="keywordflow">if</span> (quantum) {</div>
<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;                                        <a class="code" href="class_menu_item.html">MenuItem</a>*   menu_item = <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a5428f7687a8c9d2b1d4c00e9332ab855">GetMenuItem</a>();</div>
<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;                                        <a class="code" href="class_text.html">Text</a>        rgn_name  = menu_item-&gt;<a class="code" href="class_menu_item.html#a4adbca034274b0c634646ef1045fbd77">GetText</a>();</div>
<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;                                        <a class="code" href="class_sim_region.html">SimRegion</a>*  rgn       = <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a321b8fc1c61e63f66138adf5bd16cba5">FindRegion</a>(rgn_name);</div>
<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;</div>
<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;                                        <span class="keywordflow">if</span> (rgn) {</div>
<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;                                                <span class="keywordflow">if</span> (s == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>) {</div>
<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;                                                        quantum-&gt;<a class="code" href="class_quantum_drive.html#aea07c4f55589b1f03439b2364ec518c4">SetDestination</a>(rgn, <a class="code" href="struct_point.html">Point</a>(0,0,0));</div>
<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;                                                        quantum-&gt;<a class="code" href="class_quantum_drive.html#aab5b274e408fad677cd2f18d55e87cdd">Engage</a>();</div>
<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;                                                }</div>
<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;</div>
<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;                                                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;                                                        <a class="code" href="class_element.html">Element</a>* elem = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_ship.html#a791d746356184004b55fa8ad874ac31e">GetElement</a>();</div>
<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;                                                        <a class="code" href="class_radio_message.html">RadioMessage</a>* msg = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_radio_message.html">RadioMessage</a>(elem, <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>, <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af8047234742ddbba04628ac968a51a27">RadioMessage::QUANTUM_TO</a>);</div>
<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;                                                        <span class="keywordflow">if</span> (msg) {</div>
<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;                                                                msg-&gt;<a class="code" href="class_radio_message.html#a00b635ed2120e445b13906e6e00d0ce3">SetInfo</a>(rgn_name);</div>
<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;                                                                <a class="code" href="class_radio_traffic.html#a12650c86b7d95c5c92f779bc7e754c57">RadioTraffic::Transmit</a>(msg);</div>
<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;                                                        }</div>
<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;                                                }</div>
<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;                                        }</div>
<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;                                }</div>
<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;                        }</div>
<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;                }</div>
<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;</div>
<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="_tactical_view_8cpp.html#a6383bfad573b73ed0a221b41860807a3">FARCAST</a>:     <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a> &amp;&amp; <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) {</div>
<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;                        <a class="code" href="class_menu_item.html">MenuItem</a>*   menu_item = <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a5428f7687a8c9d2b1d4c00e9332ab855">GetMenuItem</a>();</div>
<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;                        <a class="code" href="class_text.html">Text</a>        rgn_name  = menu_item-&gt;<a class="code" href="class_menu_item.html#a4adbca034274b0c634646ef1045fbd77">GetText</a>();</div>
<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;                        <a class="code" href="class_sim_region.html">SimRegion</a>*  rgn       = <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a321b8fc1c61e63f66138adf5bd16cba5">FindRegion</a>(rgn_name);</div>
<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;</div>
<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;                        <span class="keywordflow">if</span> (rgn) {</div>
<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;                                <a class="code" href="class_element.html">Element</a>* elem = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_ship.html#a791d746356184004b55fa8ad874ac31e">GetElement</a>();</div>
<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;                                <a class="code" href="class_radio_message.html">RadioMessage</a>* msg = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_radio_message.html">RadioMessage</a>(elem, <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>, <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a71bdde6b4c48cc74aaaf93d7e14a9460">RadioMessage::FARCAST_TO</a>);</div>
<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;                                <span class="keywordflow">if</span> (msg) {</div>
<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160;                                        msg-&gt;<a class="code" href="class_radio_message.html#a00b635ed2120e445b13906e6e00d0ce3">SetInfo</a>(rgn_name);</div>
<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;                                        <a class="code" href="class_radio_traffic.html#a12650c86b7d95c5c92f779bc7e754c57">RadioTraffic::Transmit</a>(msg);</div>
<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160;                                }</div>
<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;                        }</div>
<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;                }</div>
<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;</div>
<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160;        <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;        }</div>
<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;}</div>
<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;</div>
<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;</div>
<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l01117"></a><span class="lineno"><a class="code" href="class_tactical_view.html#ab5d8251a1604f68cfcde3c26cc854229"> 1117</a></span>&#160;<a class="code" href="class_tactical_view.html#ab5d8251a1604f68cfcde3c26cc854229">TacticalView::BuildMenu</a>()</div>
<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;{</div>
<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#a9f799ab56942e12c9f84e0a3c5f0c5cd">ClearItems</a>();</div>
<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;        quantum_menu-&gt;<a class="code" href="class_menu.html#a9f799ab56942e12c9f84e0a3c5f0c5cd">ClearItems</a>();</div>
<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;        farcast_menu-&gt;<a class="code" href="class_menu.html#a9f799ab56942e12c9f84e0a3c5f0c5cd">ClearItems</a>();</div>
<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;        emcon_menu-&gt;<a class="code" href="class_menu.html#a9f799ab56942e12c9f84e0a3c5f0c5cd">ClearItems</a>();</div>
<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;</div>
<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>)</div>
<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;</div>
<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;        <span class="comment">// prepare quantum and farcast menus:</span></div>
<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;        <a class="code" href="class_list_iter.html">ListIter&lt;SimRegion&gt;</a> iter = <a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a>-&gt;<a class="code" href="class_sim.html#a19e621db0c9f11474cc49dd733904f86">GetRegions</a>();</div>
<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;        <span class="keywordflow">while</span> (++iter) {</div>
<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;                <a class="code" href="class_sim_region.html">SimRegion</a>* rgn = iter.<a class="code" href="class_list_iter.html#a70cb1260924c01a38c4a68552120a5e0">value</a>();</div>
<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;                <span class="keywordflow">if</span> (rgn != <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_sim_object.html#aa15b8215840833436f14f22919cf01f5">GetRegion</a>() &amp;&amp; rgn-&gt;<a class="code" href="class_sim_region.html#a66268e9d25e7c8b2c189c50b5d1772ee">Type</a>() != <a class="code" href="class_sim_region.html#aefc2bfdca9e1982aad4450de4693d9c4a8a13dc26cc70eaf1810f1ab3e36ed298">SimRegion::AIR_SPACE</a>)</div>
<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;                quantum_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(rgn-&gt;<a class="code" href="class_sim_region.html#a4fb402a63782d520a25954ab9235b1bc">Name</a>(), <a class="code" href="_tactical_view_8cpp.html#a6eca7f1488f2209d3971f3ffd383f98c">QUANTUM</a>);</div>
<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;        }</div>
<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;</div>
<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_sim_object.html#aa15b8215840833436f14f22919cf01f5">GetRegion</a>()) {</div>
<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;                <a class="code" href="class_list_iter.html">ListIter&lt;Ship&gt;</a> iter = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_sim_object.html#aa15b8215840833436f14f22919cf01f5">GetRegion</a>()-&gt;<a class="code" href="class_sim_region.html#a3d0ed64b47b7193c1eaaeee8dfcc46bf">Ships</a>();</div>
<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;                <span class="keywordflow">while</span> (++iter) {</div>
<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;                        <a class="code" href="class_ship.html">Ship</a>* s = iter.<a class="code" href="class_list_iter.html#a70cb1260924c01a38c4a68552120a5e0">value</a>();</div>
<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;</div>
<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;                        <span class="keywordflow">if</span> (s &amp;&amp; s-&gt;<a class="code" href="class_ship.html#a6ce0a9d57b3d6e9dee97eeb461a34299">GetFarcaster</a>()) {</div>
<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;                                <a class="code" href="class_farcaster.html">Farcaster</a>*  farcaster = s-&gt;<a class="code" href="class_ship.html#a6ce0a9d57b3d6e9dee97eeb461a34299">GetFarcaster</a>();</div>
<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160;</div>
<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160;                                <span class="comment">// ensure that the farcaster is connected:</span></div>
<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;                                farcaster-&gt;<a class="code" href="class_farcaster.html#a8ba7110ff9594f93172b141fa1ad1e80">ExecFrame</a>(0);</div>
<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;</div>
<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;                                <span class="comment">// now find the destination</span></div>
<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;                                <span class="keyword">const</span> <a class="code" href="class_ship.html">Ship</a>* dest      = farcaster-&gt;<a class="code" href="class_farcaster.html#aa8fdbf385c46f25b89754778ef5a86c4">GetDest</a>();</div>
<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;</div>
<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;                                <span class="keywordflow">if</span> (dest &amp;&amp; dest-&gt;<a class="code" href="class_sim_object.html#aa15b8215840833436f14f22919cf01f5">GetRegion</a>()) {</div>
<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;                                        <a class="code" href="class_sim_region.html">SimRegion</a>* rgn = dest-&gt;<a class="code" href="class_sim_object.html#aa15b8215840833436f14f22919cf01f5">GetRegion</a>();</div>
<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;                                        farcast_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(rgn-&gt;<a class="code" href="class_sim_region.html#a4fb402a63782d520a25954ab9235b1bc">Name</a>(), <a class="code" href="_tactical_view_8cpp.html#a6383bfad573b73ed0a221b41860807a3">FARCAST</a>);</div>
<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;                                }</div>
<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;                        }</div>
<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160;                }</div>
<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;        }</div>
<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;</div>
<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;        <span class="comment">// build the main menu:</span></div>
<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.camera&quot;</span>),         view_menu);</div>
<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<span class="stringliteral">&quot;&quot;</span>, 0);</div>
<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.instructions&quot;</span>),   <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a4e10166cd74cc7ad11aee16d31de0467">VIEW_INS</a>);</div>
<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.navigation&quot;</span>),     <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a84f9d3de91c732d9e1edf5304c7f3a0d">VIEW_NAV</a>);</div>
<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;</div>
<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a6fd3887d24901d505be195335ff3b565">Design</a>()-&gt;<a class="code" href="class_ship_design.html#a5b60548c756b0d8943e2c01c09917cf5">repair_screen</a>)</div>
<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.engineering&quot;</span>), <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a38c09de7e92df850fd6dfb78c29267bb">VIEW_ENG</a>);</div>
<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;</div>
<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a6fd3887d24901d505be195335ff3b565">Design</a>()-&gt;<a class="code" href="class_ship_design.html#a1f3d5ad9835de1e228f4ba3d1908a35f">wep_screen</a>)</div>
<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.weapons&quot;</span>),     <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11afd785aaad2a3108440f66eb51c5100f7">VIEW_WEP</a>);</div>
<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;</div>
<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a84e3a8fc0b5c7be51b22c36edef7e251">NumFlightDecks</a>() &gt; 0)</div>
<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.flight&quot;</span>),      <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11a549bf484e2010ee8137fb8bbed0c4e3a">VIEW_FLT</a>);</div>
<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;</div>
<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160;        emcon_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.emcon-1&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ac305b82af6cfbff0d4791c568beac6c3">RadioMessage::GO_EMCON1</a>);</div>
<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;        emcon_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.emcon-2&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a7fabf22959ecdd8ce60e8be8cdd93993">RadioMessage::GO_EMCON2</a>);</div>
<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160;        emcon_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.emcon-3&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25abccd2f8bcf2fb7a0a68ecf51f192edc7">RadioMessage::GO_EMCON3</a>);</div>
<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;</div>
<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a707a72e8e1cd0bed60ce3f3737160546">GetProbeLauncher</a>())</div>
<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;        emcon_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.probe&quot;</span>),   <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a0b246ae995e4e11fcd8530e8dc639d39">RadioMessage::LAUNCH_PROBE</a>);</div>
<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;</div>
<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<span class="stringliteral">&quot;&quot;</span>, 0);</div>
<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;        main_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.sensors&quot;</span>), emcon_menu);</div>
<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;</div>
<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a52b6b92ac091a5380e70aff0177f8577">sim</a> &amp;&amp; <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e45166f4f0c6887b4bf90e881a67ef1">GetQuantumDrive</a>()) {</div>
<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;                main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<span class="stringliteral">&quot;&quot;</span>, 0);</div>
<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;                main_menu-&gt;<a class="code" href="class_menu.html#a8a584d29c2fe1af419b0ad5cffeb88dc">AddMenu</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.quantum&quot;</span>), quantum_menu);</div>
<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;        }</div>
<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160;</div>
<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#aad13fe948c87ff5359b29ccfb69bcbc0">IsStarship</a>()) {</div>
<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160;                main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<span class="stringliteral">&quot;&quot;</span>, 0);</div>
<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160;                main_menu-&gt;<a class="code" href="class_menu.html#af6a0e954f3e1b97a3937e680a4ff75cb">AddItem</a>(<a class="code" href="class_game.html#a80f0de6fe1883b6b0e4c67b3e16afb2f">Game::GetText</a>(<span class="stringliteral">&quot;TacView.item.command&quot;</span>), <a class="code" href="_tactical_view_8cpp.html#a8207dcfe8ac31af8371a5a7a48babc11ac2f5eba37d0ff96e645cfc1bafb0338b">VIEW_CMD</a>);</div>
<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160;        }</div>
<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160;}</div>
<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;</div>
<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;</div>
<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l01196"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a81204f62ab524cbf5e5d041af7b7ef9f"> 1196</a></span>&#160;<a class="code" href="class_tactical_view.html#a81204f62ab524cbf5e5d041af7b7ef9f">TacticalView::DrawMenu</a>()</div>
<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;{</div>
<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;        <a class="code" href="class_tactical_view.html#a4e6ab11691a756c8a74991acb0340bbf">active_menu</a> = 0;</div>
<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;</div>
<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>)</div>
<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160;        <a class="code" href="class_tactical_view.html#a4e6ab11691a756c8a74991acb0340bbf">active_menu</a> = main_menu;</div>
<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;</div>
<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) {</div>
<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_ship.html#aad13fe948c87ff5359b29ccfb69bcbc0">IsStarship</a>())</div>
<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;                <a class="code" href="class_tactical_view.html#a4e6ab11691a756c8a74991acb0340bbf">active_menu</a> = starship_menu;</div>
<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;                <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_ship.html#af24832b308e7b0abfbb4af4043b3a060">IsDropship</a>())</div>
<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;                <a class="code" href="class_tactical_view.html#a4e6ab11691a756c8a74991acb0340bbf">active_menu</a> = fighter_menu;</div>
<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;        }</div>
<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;</div>
<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>) {</div>
<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;                <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a189283a7cecc66e4116f6b18909ab7ed">SetBackColor</a>(hud_color);</div>
<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160;                <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#ac00dcda600aeb27c21e118d1d43509ca">SetTextColor</a>(txt_color);</div>
<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;                <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a1b1e3fc70a9360fd41dca07afa5b3684">SetMenu</a>(<a class="code" href="class_tactical_view.html#a4e6ab11691a756c8a74991acb0340bbf">active_menu</a>);</div>
<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;                <a class="code" href="class_tactical_view.html#a6af4acd4e40f3ea35797487cd8b95606">menu_view</a>-&gt;<a class="code" href="class_menu_view.html#a95b98dd311d314218224f1091566f975">Refresh</a>();</div>
<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;        }</div>
<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160;}</div>
<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;</div>
<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;</div>
<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l01221"></a><span class="lineno"><a class="code" href="class_tactical_view.html#ae5b25cadb2275e88ae7331ccc616ba79"> 1221</a></span>&#160;<a class="code" href="class_tactical_view.html#ae5b25cadb2275e88ae7331ccc616ba79">TacticalView::GetMouseLoc3D</a>()</div>
<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;{</div>
<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;        <span class="keywordtype">int</span> mx = <a class="code" href="class_mouse.html#adc7051776b157b45d73708f056ff782f">Mouse::X</a>();</div>
<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160;        <span class="keywordtype">int</span> my = <a class="code" href="class_mouse.html#af7982b75f6be1d45e104661946cebe1a">Mouse::Y</a>();</div>
<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;</div>
<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>) {</div>
<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160;                <span class="keywordtype">double</span> focal_dist  = <a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a> / tan(<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#ae94b7cd2c8cf79e09af05ede625164e3">XAngle</a>());</div>
<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160;                <a class="code" href="struct_point.html">Point</a>  focal_vect  = <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a2fca456713d9d91ea07df80f1048196f">vpn</a>() * focal_dist +</div>
<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a325968ea53efb3208e090697074acf30">vup</a>() * -1 * (my-<a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a>/2) +</div>
<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a96bfb757bba52751f57105a08b2682d4">vrt</a>() * (mx-<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>/2);</div>
<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;</div>
<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160;                focal_vect.<a class="code" href="struct_point.html#a6efd403e2a6c0aa686e278d244d5e525">Normalize</a>();</div>
<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;</div>
<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="class_keyboard.html#add5b560d7714705a93a118ecffd7fb01">Keyboard::KeyDown</a>(VK_SHIFT)) {</div>
<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="class_mouse.html#a50d2ad2775a22806850de1f7f3a2d3f0">Mouse::RButton</a>())</div>
<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;                        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;</div>
<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160;                        <span class="keywordflow">if</span> (fabs(focal_vect.x) &gt; fabs(focal_vect.z)) {</div>
<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160;                                <span class="keywordtype">double</span> dx = <a class="code" href="class_tactical_view.html#af6d99821b76a026a28db0e65c3c50754">move_loc</a>.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a> - <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>().<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>;</div>
<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;                                <span class="keywordtype">double</span> t  = -1 * ((<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>().<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a> - dx) / focal_vect.x);</div>
<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160;</div>
<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160;                                <span class="keywordflow">if</span> (t &gt; 0) {</div>
<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;                                        <a class="code" href="struct_point.html">Point</a>  p  = <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>() + focal_vect * t;</div>
<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160;                                        <a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a> = p.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a> - <a class="code" href="class_tactical_view.html#a1fcf0d17804cfedbada2fb0f191576fc">base_alt</a>;</div>
<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;                                }</div>
<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;                        }</div>
<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160;                        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160;                                <span class="keywordtype">double</span> dz = <a class="code" href="class_tactical_view.html#af6d99821b76a026a28db0e65c3c50754">move_loc</a>.<a class="code" href="struct_point.html#a05ba3b1dfcb19430582ae953cbbfbded">z</a> - <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>().<a class="code" href="struct_point.html#a05ba3b1dfcb19430582ae953cbbfbded">z</a>;</div>
<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160;                                <span class="keywordtype">double</span> t  = -1 * ((<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>().<a class="code" href="struct_point.html#a05ba3b1dfcb19430582ae953cbbfbded">z</a> - dz) / focal_vect.z);</div>
<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160;                                <a class="code" href="struct_point.html">Point</a>  p  = <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>() + focal_vect * t;</div>
<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160;</div>
<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160;                                <span class="keywordflow">if</span> (t &gt; 0) {</div>
<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;                                        <a class="code" href="struct_point.html">Point</a>  p  = <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>() + focal_vect * t;</div>
<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160;                                        <a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a> = p.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a> - <a class="code" href="class_tactical_view.html#a1fcf0d17804cfedbada2fb0f191576fc">base_alt</a>;</div>
<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160;                                }</div>
<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160;                        }</div>
<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;</div>
<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a> &gt; 25e3)</div>
<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160;                        <a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a> = 25e3;</div>
<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;                        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a> &lt; -25e3)</div>
<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;                        <a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a> = -25e3;</div>
<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;</div>
<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;                        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;                }</div>
<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;                <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;                        <span class="keywordflow">if</span> (fabs(focal_vect.y) &gt; 1e-5) {</div>
<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;                                <span class="keywordflow">if</span> (<a class="code" href="class_mouse.html#a50d2ad2775a22806850de1f7f3a2d3f0">Mouse::RButton</a>())</div>
<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160;                                <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160;</div>
<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;                                <span class="keywordtype">bool</span>   <a class="code" href="_multi_controller_8cpp.html#ab4386a3c477c99034324a61c197c27d4">clamp</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;                                <span class="keywordtype">double</span> t = -1 * ((<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>().<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a> - <a class="code" href="class_tactical_view.html#a1fcf0d17804cfedbada2fb0f191576fc">base_alt</a>) / focal_vect.y);</div>
<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160;</div>
<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160;                                <span class="keywordflow">while</span> (t &lt;= 0 &amp;&amp; my &lt; <a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a>-1) {</div>
<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160;                                        my++;</div>
<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;                                        clamp = <span class="keyword">true</span>;</div>
<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160;</div>
<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;                                        focal_vect  = <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a2fca456713d9d91ea07df80f1048196f">vpn</a>() * focal_dist +</div>
<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;                                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a325968ea53efb3208e090697074acf30">vup</a>() * -1 * (my-<a class="code" href="class_tactical_view.html#a792227388a09b5ddb123db1c888cc37f">height</a>/2) +</div>
<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160;                                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a96bfb757bba52751f57105a08b2682d4">vrt</a>() * (mx-<a class="code" href="class_tactical_view.html#a232e31b308828ad783585f625c410e09">width</a>/2);</div>
<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;</div>
<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160;                                        focal_vect.<a class="code" href="struct_point.html#a6efd403e2a6c0aa686e278d244d5e525">Normalize</a>();</div>
<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160;                                        t = -1 * ((<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>().<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a> - <a class="code" href="class_tactical_view.html#a1fcf0d17804cfedbada2fb0f191576fc">base_alt</a>) / focal_vect.y);</div>
<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;                                }</div>
<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;</div>
<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160;                                <span class="keywordflow">if</span> (t &gt; 0) {</div>
<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160;                                        <span class="keywordflow">if</span> (clamp)</div>
<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160;                                        <a class="code" href="class_mouse.html#aa86a16aa9c6db7de6ef2352f2374602f">Mouse::SetCursorPos</a>(mx, my);</div>
<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;</div>
<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;                                        <a class="code" href="class_tactical_view.html#af6d99821b76a026a28db0e65c3c50754">move_loc</a> = <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a93cbaf0c085bfaa8b003148a8206954d">Pos</a>() + focal_vect * t;</div>
<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160;                                }</div>
<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160;</div>
<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;                                <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;                        }</div>
<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160;                }</div>
<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160;        }</div>
<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160;</div>
<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160;}</div>
<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160;</div>
<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l01301"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a9ff9c1e9cf00a9b44fd83eee007b0d7e"> 1301</a></span>&#160;<a class="code" href="class_tactical_view.html#a9ff9c1e9cf00a9b44fd83eee007b0d7e">TacticalView::DrawMove</a>()</div>
<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>&#160;{</div>
<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a> || !<a class="code" href="class_tactical_view.html#a03934c680c61f178473e2697ecb6b761">show_move</a> || !<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160;</div>
<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160;        <a class="code" href="struct_point.html">Point</a> origin = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>();</div>
<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160;</div>
<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ae5b25cadb2275e88ae7331ccc616ba79">GetMouseLoc3D</a>()) {</div>
<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;                <a class="code" href="struct_point.html">Point</a> dest = <a class="code" href="class_tactical_view.html#af6d99821b76a026a28db0e65c3c50754">move_loc</a>;</div>
<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;</div>
<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;                <span class="keywordtype">double</span> distance = (dest - origin).length();</div>
<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160;</div>
<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(origin);</div>
<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(origin);</div>
<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160;</div>
<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160;                <span class="keywordtype">int</span> x0 = (int) origin.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>;</div>
<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160;                <span class="keywordtype">int</span> y0 = (<span class="keywordtype">int</span>) origin.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>;</div>
<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160;</div>
<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(dest);</div>
<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160;                <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(dest);</div>
<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160;</div>
<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160;                <span class="keywordtype">int</span> x = (int) dest.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>;</div>
<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160;                <span class="keywordtype">int</span> y = (<span class="keywordtype">int</span>) dest.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>;</div>
<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160;</div>
<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160;                <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a125960125167fa44bc7b17b90647a943">DrawEllipse</a>(x-10, y-10, x+10, y+10, <a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>);</div>
<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160;                <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a443689a55342fc2a011023b8c3f038b8">DrawLine</a>(x0, y0, x, y, <a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>);</div>
<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;</div>
<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160;                <span class="keywordtype">char</span> range[32];</div>
<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160;                <a class="code" href="struct_rect.html">Rect</a> range_rect(x+12, y-8, 120, 20);</div>
<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160;</div>
<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160;                <span class="keywordflow">if</span> (fabs(<a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a>) &gt; 1) {</div>
<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160;                        dest = <a class="code" href="class_tactical_view.html#af6d99821b76a026a28db0e65c3c50754">move_loc</a>;</div>
<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160;                        dest.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a> += <a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a>;</div>
<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160;                        distance = (dest - <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>()).length();</div>
<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160;</div>
<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160;                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(dest);</div>
<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160;                        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(dest);</div>
<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;</div>
<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160;                        <span class="keywordtype">int</span> x1 = (int) dest.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>;</div>
<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160;                        <span class="keywordtype">int</span> y1 = (<span class="keywordtype">int</span>) dest.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>;</div>
<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160;</div>
<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160;                        <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a125960125167fa44bc7b17b90647a943">DrawEllipse</a>(x1-10, y1-10, x1+10, y1+10, <a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>);</div>
<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160;                        <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a443689a55342fc2a011023b8c3f038b8">DrawLine</a>(x0, y0, x1, y1, <a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>);</div>
<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160;                        <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a443689a55342fc2a011023b8c3f038b8">DrawLine</a>(x1, y1, x,  y,  <a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>);</div>
<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160;</div>
<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160;                        range_rect.<a class="code" href="struct_rect.html#a64d1ef14e429e1816539de4c54361e55">x</a> = x1+12;</div>
<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160;                        range_rect.<a class="code" href="struct_rect.html#a1e37b6f8a4fb0d68ba22c8fffffab0a4">y</a> = y1-8;</div>
<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160;                }</div>
<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160;</div>
<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160;                <a class="code" href="_format_util_8cpp.html#abb81c01c15eb633b5ecdec623a323211">FormatNumber</a>(range, distance);</div>
<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a264907a4e3a204f1371b46b25bc5ed09">SetColor</a>(<a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>);</div>
<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a5b500094b86c1b9a0b92d52531009943">DrawText</a>(range, 0, range_rect, DT_LEFT | DT_SINGLELINE);</div>
<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160;                <a class="code" href="class_tactical_view.html#a33fb2d31b82d7c0a8eeb41cdcabccd82">font</a>-&gt;<a class="code" href="class_font.html#a264907a4e3a204f1371b46b25bc5ed09">SetColor</a>(txt_color);</div>
<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;        }</div>
<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160;}</div>
<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160;</div>
<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l01357"></a><span class="lineno"><a class="code" href="class_tactical_view.html#ab9264e3b9f2c56d30b386a76d1038eab"> 1357</a></span>&#160;<a class="code" href="class_tactical_view.html#ab9264e3b9f2c56d30b386a76d1038eab">TacticalView::SendMove</a>()</div>
<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160;{</div>
<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a> || !<a class="code" href="class_tactical_view.html#a03934c680c61f178473e2697ecb6b761">show_move</a> || !<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160;</div>
<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#ae5b25cadb2275e88ae7331ccc616ba79">GetMouseLoc3D</a>()) {</div>
<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160;                <a class="code" href="class_element.html">Element</a>* elem = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_ship.html#a791d746356184004b55fa8ad874ac31e">GetElement</a>();</div>
<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160;                <a class="code" href="class_radio_message.html">RadioMessage</a>* msg = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_radio_message.html">RadioMessage</a>(elem, <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>, <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25ad1acb534c24126048c3abcd4cf331d84">RadioMessage::MOVE_PATROL</a>);</div>
<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160;                <a class="code" href="struct_point.html">Point</a> dest = <a class="code" href="class_tactical_view.html#af6d99821b76a026a28db0e65c3c50754">move_loc</a>;</div>
<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160;                dest.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a> += <a class="code" href="class_tactical_view.html#ad6821313bfdbecca65e9c8b971decfed">move_alt</a>;</div>
<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160;                msg-&gt;<a class="code" href="class_radio_message.html#ae0182afcaf25caaf8164819f423f6568">SetLocation</a>(dest);</div>
<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160;                <a class="code" href="class_radio_traffic.html#a12650c86b7d95c5c92f779bc7e754c57">RadioTraffic::Transmit</a>(msg);</div>
<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;                <a class="code" href="class_h_u_d_sounds.html#a2ce2e3e88a8f60234e183608b56004c3">HUDSounds::PlaySound</a>(<a class="code" href="class_h_u_d_sounds.html#a27e5315377467cababa29be8e99a0bd6a5c95584038a8400704989e4fd367b654">HUDSounds::SND_TAC_ACCEPT</a>);</div>
<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160;        }</div>
<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;}</div>
<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160;</div>
<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;<span class="comment">// +--------------------------------------------------------------------+</span></div>
<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160;</div>
<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160;<span class="keyword">static</span> <span class="keywordtype">int</span> invalid_action = <span class="keyword">false</span>;</div>
<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160;</div>
<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l01377"></a><span class="lineno"><a class="code" href="class_tactical_view.html#ac918ab05e653022fafe2d99c896e28d8"> 1377</a></span>&#160;<a class="code" href="class_tactical_view.html#ac918ab05e653022fafe2d99c896e28d8">TacticalView::DrawAction</a>()</div>
<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160;{</div>
<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a> || !<a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a> || !<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>) <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160;</div>
<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160;        <a class="code" href="struct_point.html">Point</a> origin = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_physical.html#a18d7b806f29edde8af178ae9a6d0ad90">Location</a>();</div>
<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160;        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#add21d33e99c41fb24985cd28b31b136c">Transform</a>(origin);</div>
<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160;        <a class="code" href="class_tactical_view.html#a120560a553560efd47c46cab650e0652">projector</a>-&gt;<a class="code" href="class_projector.html#a29d7a2c159c1ba92c56e24fe2db399ea">Project</a>(origin);</div>
<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160;</div>
<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160;        <span class="keywordtype">int</span> x0 = (int) origin.<a class="code" href="struct_point.html#ab99c56589bc8ad5fa5071387110a5bc7">x</a>;</div>
<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160;        <span class="keywordtype">int</span> y0 = (<span class="keywordtype">int</span>) origin.<a class="code" href="struct_point.html#afa38be143ae800e6ad69ce8ed4df62d8">y</a>;</div>
<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160;</div>
<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;        <span class="keywordtype">int</span> mx = <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.x;</div>
<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160;        <span class="keywordtype">int</span> my = <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.y;</div>
<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160;        <span class="keywordtype">int</span> r  = 10;</div>
<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;</div>
<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160;        <span class="keywordtype">int</span> enemy = 2;</div>
<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() &gt; 1)</div>
<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160;        enemy = 1;</div>
<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160;</div>
<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160;        <a class="code" href="class_ship.html">Ship</a>* tgt = <a class="code" href="class_tactical_view.html#aadde283b069805afabd48ebe85bff64a">WillSelectAt</a>(mx, my);</div>
<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160;        <span class="keywordtype">int</span>   tgt_iff = 0;</div>
<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160;</div>
<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160;        <span class="keywordflow">if</span> (tgt)</div>
<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;        tgt_iff = tgt-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>();</div>
<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160;</div>
<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160;        <a class="code" href="class_color.html">Color</a> c = <a class="code" href="class_color.html#a85c6885383e69ed18d7c7f633c7ea110">Color::White</a>;</div>
<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160;</div>
<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160;        <span class="keywordflow">switch</span> (<a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a>) {</div>
<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25aebb3dbda4bef696b3fa43756b42cbe07">RadioMessage::ATTACK</a>:</div>
<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af76cdb7c21fa629ec66d4939f2afc8c0">RadioMessage::BRACKET</a>:</div>
<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160;                c = <a class="code" href="class_ship.html#a0d3861128ef2694f196443f4fe8b08b4">Ship::IFFColor</a>(enemy);</div>
<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160;                <span class="keywordflow">if</span> (tgt) {</div>
<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160;                        <span class="keywordflow">if</span> (tgt_iff == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>() || tgt_iff == 0)</div>
<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160;                        r = 0;</div>
<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160;                }</div>
<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;</div>
<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25a94f437f89bd938e97777b1df27925871">RadioMessage::ESCORT</a>:</div>
<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160;        <span class="keywordflow">case</span> <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af331f349de85c6c723cd1ff49d9097ba">RadioMessage::DOCK_WITH</a>:</div>
<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160;                c = <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#ac06e6676c9166a66bd449307cddd1b43">MarkerColor</a>();</div>
<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160;                <span class="keywordflow">if</span> (tgt) {</div>
<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160;                        <span class="keywordflow">if</span> (tgt_iff == enemy)</div>
<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160;                        r = 0;</div>
<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160;</div>
<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160;                        <span class="comment">// must have a hangar to dock with...</span></div>
<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160;                        <span class="keywordflow">if</span> (<a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a> == <a class="code" href="class_radio_message.html#ad12d7f6b9297753a216da6d05eecfd25af331f349de85c6c723cd1ff49d9097ba">RadioMessage::DOCK_WITH</a> &amp;&amp; tgt-&gt;<a class="code" href="class_ship.html#a56f94aa8913b5fc31c3ce60e0010574b">GetHangar</a>() == 0)</div>
<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160;                        r = 0;</div>
<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160;                }</div>
<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160;</div>
<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160;        <span class="keywordflow">default</span>:                               </div>
<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160;                <span class="keywordflow">if</span> (tgt) {</div>
<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160;                        <span class="keywordflow">if</span> (tgt_iff == <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>-&gt;<a class="code" href="class_ship.html#a5e603faf7321fb04d5b306d70ae6b9ca">GetIFF</a>())</div>
<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160;                        r = 0;</div>
<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160;                }</div>
<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160;        }</div>
<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160;</div>
<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;        <span class="keywordflow">if</span> (tgt &amp;&amp; r) {</div>
<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160;                <span class="keywordflow">if</span> ((<a class="code" href="class_game.html#a321790057c657d52f3585f883cdbc507">Game::RealTime</a>()/200) &amp; 1)</div>
<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160;                r = 20;</div>
<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;                <span class="keywordflow">else</span></div>
<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;                r = 15;</div>
<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160;        }</div>
<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160;</div>
<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160;        <span class="keywordflow">if</span> (r) {</div>
<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160;                invalid_action = <span class="keyword">false</span>;</div>
<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160;                <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a125960125167fa44bc7b17b90647a943">DrawEllipse</a>(mx-r, my-r, mx+r, my+r, c);</div>
<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160;        }</div>
<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160;</div>
<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160;                invalid_action = <span class="keyword">true</span>;</div>
<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;                <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a443689a55342fc2a011023b8c3f038b8">DrawLine</a>(mx-10, my-10, mx+10, my+10, c);</div>
<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160;                <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a443689a55342fc2a011023b8c3f038b8">DrawLine</a>(mx+10, my-10, mx-10, my+10, c);</div>
<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160;        }</div>
<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160;</div>
<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160;        <a class="code" href="class_view.html#a9b0fbd480b9c55964cbabbd498ba1a50">window</a>-&gt;<a class="code" href="class_window.html#a443689a55342fc2a011023b8c3f038b8">DrawLine</a>(x0, y0, mx, my, c);</div>
<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;}</div>
<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;</div>
<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l01457"></a><span class="lineno"><a class="code" href="class_tactical_view.html#a42a08279d4362a47c59346b89c46e88c"> 1457</a></span>&#160;<a class="code" href="class_tactical_view.html#a42a08279d4362a47c59346b89c46e88c">TacticalView::SendAction</a>()</div>
<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160;{</div>
<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a> || !<a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a> || invalid_action) {</div>
<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160;                <a class="code" href="class_h_u_d_sounds.html#a2ce2e3e88a8f60234e183608b56004c3">HUDSounds::PlaySound</a>(<a class="code" href="class_h_u_d_sounds.html#a27e5315377467cababa29be8e99a0bd6a95fce3814a2809cd13603d628b38cdc2">HUDSounds::SND_TAC_REJECT</a>);</div>
<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160;                <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;        }</div>
<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160;</div>
<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160;        <span class="keywordtype">int</span> mx = <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.x;</div>
<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160;        <span class="keywordtype">int</span> my = <a class="code" href="class_tactical_view.html#a0be9023fd5462bfb1072de6e661e6c38">mouse_action</a>.y;</div>
<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160;</div>
<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160;        <a class="code" href="class_ship.html">Ship</a>* tgt = <a class="code" href="class_tactical_view.html#aadde283b069805afabd48ebe85bff64a">WillSelectAt</a>(mx, my);</div>
<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160;</div>
<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160;        <span class="keywordflow">if</span> (tgt) {</div>
<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;                <a class="code" href="class_element.html">Element</a>*       elem     = <a class="code" href="class_tactical_view.html#ab85a29b5cb1f8c6b14e15da341275678">msg_ship</a>-&gt;<a class="code" href="class_ship.html#a791d746356184004b55fa8ad874ac31e">GetElement</a>();</div>
<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;                <a class="code" href="class_radio_message.html">RadioMessage</a>*  msg      = <span class="keyword">new</span>(__FILE__,__LINE__) <a class="code" href="class_radio_message.html">RadioMessage</a>(elem, <a class="code" href="class_tactical_view.html#a04a1e24962517a0b90b6b927f00dcbd2">ship</a>, <a class="code" href="class_tactical_view.html#a8deb3ee7a2cd4a44e5634ff2d473bdb4">show_action</a>);</div>
<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;</div>
<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;                <span class="comment">/***</span></div>
<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160;<span class="comment">        Element*       tgt_elem = tgt-&gt;GetElement();</span></div>
<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;<span class="comment">        if (tgt_elem) {</span></div>
<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160;<span class="comment">                for (int i = 1; i &lt;= tgt_elem-&gt;NumShips(); i++)</span></div>
<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;<span class="comment">                        msg-&gt;AddTarget(tgt_elem-&gt;GetShip(i));</span></div>
<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;<span class="comment">        }</span></div>
<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160;<span class="comment">        else {</span></div>
<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160;<span class="comment">                msg-&gt;AddTarget(tgt);</span></div>
<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160;<span class="comment">        }</span></div>
<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160;<span class="comment">        ***/</span></div>
<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160;</div>
<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160;                msg-&gt;<a class="code" href="class_radio_message.html#afd49e97a67777cc8756355d0d9d8377c">AddTarget</a>(tgt);</div>
<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>&#160;</div>
<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>&#160;                <a class="code" href="class_radio_traffic.html#a12650c86b7d95c5c92f779bc7e754c57">RadioTraffic::Transmit</a>(msg);</div>
<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160;                <a class="code" href="class_h_u_d_sounds.html#a2ce2e3e88a8f60234e183608b56004c3">HUDSounds::PlaySound</a>(<a class="code" href="class_h_u_d_sounds.html#a27e5315377467cababa29be8e99a0bd6a5c95584038a8400704989e4fd367b654">HUDSounds::SND_TAC_ACCEPT</a>);</div>
<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160;        }</div>
<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160;        <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160;                <a class="code" href="class_h_u_d_sounds.html#a2ce2e3e88a8f60234e183608b56004c3">HUDSounds::PlaySound</a>(<a class="code" href="class_h_u_d_sounds.html#a27e5315377467cababa29be8e99a0bd6a95fce3814a2809cd13603d628b38cdc2">HUDSounds::SND_TAC_REJECT</a>);</div>
<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160;        }</div>
<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;}</div>
<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160;</div>
<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_ea1b58c809a5070716d7c602998a95b0.html">Stars45</a></li><li class="navelem"><a class="el" href="_tactical_view_8cpp.html">TacticalView.cpp</a></li>
    <li class="footer">Generated on Tue Jun 5 2012 20:47:14 for Starshatter_Open by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.1 </li>
  </ul>
</div>
</body>
</html>
